作成日: 2019/12/10 最終更新日: 2019/12/10
文書種別
使用方法
詳細
列データをフィルタリングする時に表示されるフィルタエディタで、「適用」「キャンセル」「リセット」ボタンの前景色、背景色を変更するには、MouseClickイベントにて、C1FlexGridのHitTestメソッドを使用してC1FlexGridのFilterEditorFormを見つけ、その上にある該当ボタンコントロールの色を設定します。
※下記サンプルでは、「適用」ボタンの前景色を白に、背景色を赤に変更しています。
◎サンプルコード(VB)
※下記サンプルでは、「適用」ボタンの前景色を白に、背景色を赤に変更しています。
◎サンプルコード(VB)
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
'フィルタの設定
C1FlexGrid1.AllowFiltering = True
C1FlexGrid1.Cols(1).AllowFiltering = C1.Win.C1FlexGrid.AllowFiltering.Default
End Sub
Private Sub C1FlexGrid1_MouseClick(sender As Object, e As MouseEventArgs) Handles C1FlexGrid1.MouseClick
If (C1FlexGrid1.HitTest(e.Location).Type = HitTestTypeEnum.FilterIcon) Then
For Each frm As Form In Application.OpenForms
If ((frm.Name = "FilterEditorForm") _
AndAlso (frm.GetType.ToString = "C1.Win.C1FlexGrid.FilterEditorForm")) Then
Dim ts As ToolStrip = CType(frm.Controls(0), ToolStrip)
For Each item As ToolStripItem In ts.Items
' 適用ボタンの背景色と文字色の変更
If item.Text.StartsWith("適用") Then
item.BackColor = Color.Red
item.ForeColor = Color.White
Exit For
End If
Next
Exit For
End If
Next
End If
End Sub
◎サンプルコード(C#) private void Form1_Load(object sender, EventArgs e)
{
// フィルタの設定
c1FlexGrid1.AllowFiltering = true;
c1FlexGrid1.Cols[1].AllowFiltering = C1.Win.C1FlexGrid.AllowFiltering.Default;
}
private void C1FlexGrid1_MouseClick(object sender, MouseEventArgs e)
{
if (c1FlexGrid1.HitTest(e.Location).Type == HitTestTypeEnum.FilterIcon)
{
foreach (Form frm in Application.OpenForms)
{
if (frm.Name == "FilterEditorForm" && frm.GetType().ToString() == "C1.Win.C1FlexGrid.FilterEditorForm")
{
ToolStrip ts = frm.Controls[0] as ToolStrip;
foreach(ToolStripItem item in ts.Items)
{
// 適用ボタンの背景色と文字色の変更
if (item.Text.StartsWith("適用"))
{
item.BackColor = Color.Red;
item.ForeColor = Color.White;
break;
}
}
break;
}
}
}
}
旧文書番号
84719