列全体のLockedプロパティを「True」に設定しましたが、列上のセル単位でのLockedプロパティは「False」になっています

文書番号 : 38977     文書種別 : 使用方法     登録日 : 2015/07/02     最終更新日 : 2015/07/02
文書を印刷する
対象製品
SPREAD for Windows Forms 8.0J
詳細
Columnクラスに対してロックを設定した場合、設定はこのクラスに対してのみ有効となりCellクラスには反映されません。ロック状態を判断する場合には設定/取得を同一のクラスとしておく、またはSheetViewクラスより提供されているGetStyleInfoメソッドを呼び出すことで、列単位でロックされている場合のセル情報を取得することが出来ます。

◎セルのLockedプロパティが「False」となるケース
  Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
    FpSpread1.ActiveSheet.RowCount = 3
    FpSpread1.ActiveSheet.LockBackColor = Color.Red
    //列単位でのロック
    FpSpread1.ActiveSheet.Columns(1).Locked = True
  End Sub

  Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    Debug.WriteLine(FpSpread1.ActiveSheet.Cells(0, 1).Locked)
    Debug.WriteLine(FpSpread1.ActiveSheet.Cells(1, 1).Locked)
    Debug.WriteLine(FpSpread1.ActiveSheet.Cells(2, 1).Locked)
  End Sub

◎同一クラスの設定/取得により、セルのLockedプロパティが「True」となるケース
  Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
    FpSpread1.ActiveSheet.RowCount = 3
    FpSpread1.ActiveSheet.LockBackColor = Color.Red
    //セル単位でのロック
    FpSpread1.ActiveSheet.Cells(0, 1, FpSpread1.ActiveSheet.RowCount - 1, 1).Locked = True
  End Sub

  Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    Debug.WriteLine(FpSpread1.ActiveSheet.Cells(0, 1).Locked)
    Debug.WriteLine(FpSpread1.ActiveSheet.Cells(1, 1).Locked)
    Debug.WriteLine(FpSpread1.ActiveSheet.Cells(2, 1).Locked)
  End Sub

◎GetStyleInfoメソッド呼び出しにより、セルのLockedプロパティが「True」となるケース
  Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
    FpSpread1.ActiveSheet.RowCount = 3
    FpSpread1.ActiveSheet.LockBackColor = Color.Red
    //列単位でのロック
    FpSpread1.ActiveSheet.Columns(1).Locked = True
  End Sub

  Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    Debug.WriteLine(FpSpread1.ActiveSheet.GetStyleInfo(0, 1).Locked)
    Debug.WriteLine(FpSpread1.ActiveSheet.GetStyleInfo(1, 1).Locked)
    Debug.WriteLine(FpSpread1.ActiveSheet.GetStyleInfo(2, 1).Locked)
  End Sub