PowerTools MultiRow for Windows Forms 8.0J
表示と非表示

特定の行またはセルを非表示にするには、Visibleプロパティを使用します。行を非表示にした場合、その行が存在していたスペースには次の行が繰り上がって表示されます。セルを非表示にした場合、そのセルが存在していたスペースは空白になります。セルのレイアウトは変更されません。

  • コミットされていない行を非表示にすることはできません。

行の非表示設定
次のコードは、1行目を非表示にします。1行目の変更が確定していない場合(コミットしていない場合)や行が存在しない場合は例外が発生します。

GcMultiRow1.Rows(0).Visible = False
gcMultiRow1.Rows[0].Visible = false;

行が非表示かどうかを取得するには、GcMultiRow.GetStateメソッドまたはRow.Visibleプロパティ(Section.Visibleプロパティ)を使用します。

Imports GrapeCity.Win.MultiRow

Console.WriteLine((GcMultiRow1.GetState(0) And MultiRowElementStates.Visible) = MultiRowElementStates.Visible)
Console.WriteLine(gcMultiRow1.Rows(0).Visible)
using GrapeCity.Win.MultiRow;

Console.WriteLine((gcMultiRow1.GetState(0) & MultiRowElementStates.Visible) == MultiRowElementStates.Visible);
Console.WriteLine(gcMultiRow1.Rows[0].Visible);

行が表示可能になっている状態で、その行が画面上に表示されているかどうかを取得するにはGcMultiRow.GetStateメソッドまたはRow.Displayedプロパティを使用します。

Imports GrapeCity.Win.MultiRow

Console.WriteLine((GcMultiRow1.GetState(0) And MultiRowElementStates.Displayed) = MultiRowElementStates.Displayed)
Console.WriteLine(gcMultiRow1.Rows(0).Displayed)
using GrapeCity.Win.MultiRow;

Console.WriteLine((gcMultiRow1.GetState(0) & MultiRowElementStates.Displayed) == MultiRowElementStates.Displayed);
Console.WriteLine(gcMultiRow1.Rows[0].Displayed);

GcMultiRow.GetStateメソッドは対象の行をインスタンス化しないのでパフォーマンスの面で優れています。一方、VisibleプロパティやDisplayedプロパティはコードの可読性や非表示の設定が可能な点で優れています。
セルの非表示設定
次のコードは、1行目の2つめのセルを非表示にします。

GcMultiRow1.Rows(0).Cells(1).Visible = False
gcMultiRow1.Rows[0].Cells[1].Visible = false;

セルが非表示かどうかを取得するには、GcMultiRow.GetStateメソッドまたはCell.Visibleプロパティを使用します。

Imports GrapeCity.Win.MultiRow

Console.WriteLine((GcMultiRow1.GetState(0, 0) And MultiRowElementStates.Visible) = MultiRowElementStates.Visible)
Console.WriteLine(gcMultiRow1.Rows(0).Cells(0).Visible)
using GrapeCity.Win.MultiRow;

Console.WriteLine((gcMultiRow1.GetState(0, 0) & MultiRowElementStates.Visible) == MultiRowElementStates.Visible);
Console.WriteLine(gcMultiRow1.Rows[0].Cells[0].Visible);

セルが表示可能になっている状態で、そのセルが画面上に表示されているかどうかを取得するにはGcMultiRow.GetStateメソッドまたはCell.Displayedプロパティを使用します。

Imports GrapeCity.Win.MultiRow

Console.WriteLine((GcMultiRow1.GetState(0, 0) And MultiRowElementStates.Displayed) = MultiRowElementStates.Displayed)
Console.WriteLine(gcMultiRow1.Rows(0).Cells(0).Displayed)
using GrapeCity.Win.MultiRow;

Console.WriteLine((gcMultiRow1.GetState(0, 0) & MultiRowElementStates.Displayed) == MultiRowElementStates.Displayed);
Console.WriteLine(gcMultiRow1.Rows[0].Cells[0].Displayed);

GcMultiRow.GetStateメソッドは対象のセルをインスタンス化しないのでパフォーマンスの面で優れています。一方、VisibleプロパティやDisplayedプロパティはコードの可読性や非表示の設定が可能な点で優れています。
   
参照

 

 


© 2008-2015 GrapeCity inc. All rights reserved.