作成日: 2020/05/11 最終更新日: 2020/05/11
文書種別
使用方法
詳細
任意のフィルタ条件でフィルタリングした後、表示されているすべての行に対して、チェックボックス列のチェックをONにするには、行のVisibleプロパティを調べて、Trueの場合のみ該当列の値をTrueに設定します。
◎サンプルコード(VB)
◎サンプルコード(VB)
Imports C1.Win.C1FlexGrid
Public Class Form1
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
' データの作成
Dim dt As DataTable = New DataTable("TEST")
dt.Columns.Add("ColumnA", Type.GetType("System.Int32"))
dt.Columns.Add("ColumnB", Type.GetType("System.Boolean"))
Dim i As Integer
For i = 0 To 9
dt.Rows.Add(i, False)
Next
dt.AcceptChanges()
C1FlexGrid1.DataSource = dt
End Sub
Private Sub button2_Click(sender As Object, e As EventArgs) Handles button2.Click
' フィルタ条件の設定
C1FlexGrid1.AllowFiltering = True
C1FlexGrid1.Cols("ColumnA").AllowFiltering = AllowFiltering.ByCondition
Dim conditionFilter As ConditionFilter = New ConditionFilter
conditionFilter.Condition1.Operator = ConditionOperator.GreaterThan
conditionFilter.Condition1.Parameter = 5
C1FlexGrid1.Cols("ColumnA").Filter = conditionFilter
End Sub
Private Sub button3_Click(sender As Object, e As EventArgs) Handles button3.Click
' フィルタ行のチェックをON
Dim i As Integer
For i = 0 To C1FlexGrid1.Rows.Count - 1
If C1FlexGrid1.Rows(i).Visible Then
C1FlexGrid1(i, 2) = True
End If
Next
End Sub
End Class
◎サンプルコード(C#)using C1.Win.C1FlexGrid;
namespace prj_C1FlexGrid
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
// データの作成
DataTable dt = new DataTable("TEST");
dt.Columns.Add("ColumnA", typeof(Int32));
dt.Columns.Add("ColumnB", typeof(bool));
for (int i = 0; i < 10; i++)
{
dt.Rows.Add(i, false);
}
dt.AcceptChanges();
c1FlexGrid1.DataSource = dt;
}
private void button2_Click(object sender, EventArgs e)
{
// フィルタ条件の設定
c1FlexGrid1.AllowFiltering = true;
c1FlexGrid1.Cols["ColumnA"].AllowFiltering = AllowFiltering.ByCondition;
ConditionFilter conditionFilter = new ConditionFilter();
conditionFilter.Condition1.Operator = ConditionOperator.GreaterThan;
conditionFilter.Condition1.Parameter = 5;
c1FlexGrid1.Cols["ColumnA"].Filter = conditionFilter;
}
private void button3_Click(object sender, EventArgs e)
{
// フィルタ行のチェックをON
for (int i = 1; i < c1FlexGrid1.Rows.Count; i++)
{
if (c1FlexGrid1.Rows[i].Visible)
{
c1FlexGrid1[i, 2] = true;
}
}
}
}
}
旧文書番号
85561