WPF Telerik RadGridView 过滤器未应用于复选框
WPF Telerik RadGridView Filter not being applied for Checkboxes
我有一个带有 RadGridView
的页面和一些用于快速过滤 RadGridView
数据的按钮。
当用户单击其中一个按钮时,FilterDescriptor
将添加到视图并应用过滤器。如果用户点击 "Show New Items only",将应用过滤器并显示新项目。
这适用于除我的布尔复选框列之外的所有列。应用过滤器时,找不到匹配项。我尝试了很多方法,但似乎没有任何效果。
XAML
<telerik:GridViewCheckBoxColumn UniqueName="CorrectiveActionRequired" Header="Corrective Action" IsReadOnly="False" IsEnabled="True" IsFilterable="True"
DataMemberBinding="{Binding CorrectiveActionTaken, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
AutoSelectOnEdit="True" EditTriggers="CellClick" />
C#
private void FilterByCorrectiveActionRequired(object sender, MouseButtonEventArgs e)
{
this.NearMissRadGridView.FilterDescriptors.Clear();
FilterDescriptor descriptor = new FilterDescriptor();
descriptor.Member = "CorrectiveActionRequired";
descriptor.Operator = FilterOperator.IsEqualTo;
descriptor.Value = true;
this.NearMissRadGridView.FilterDescriptors.Add(descriptor);
}
尝试将 Member
属性 设置为 "CorrectiveActionTaken",这是 属性 的实际名称(我想):
private void FilterByCorrectiveActionRequired(object sender, MouseButtonEventArgs e)
{
this.NearMissRadGridView.FilterDescriptors.Clear();
FilterDescriptor descriptor = new FilterDescriptor();
descriptor.Member = "CorrectiveActionTaken"; //<--
descriptor.Operator = FilterOperator.IsEqualTo;
descriptor.Value = true;
this.NearMissRadGridView.FilterDescriptors.Add(descriptor);
}
我有一个带有 RadGridView
的页面和一些用于快速过滤 RadGridView
数据的按钮。
当用户单击其中一个按钮时,FilterDescriptor
将添加到视图并应用过滤器。如果用户点击 "Show New Items only",将应用过滤器并显示新项目。
这适用于除我的布尔复选框列之外的所有列。应用过滤器时,找不到匹配项。我尝试了很多方法,但似乎没有任何效果。
XAML
<telerik:GridViewCheckBoxColumn UniqueName="CorrectiveActionRequired" Header="Corrective Action" IsReadOnly="False" IsEnabled="True" IsFilterable="True"
DataMemberBinding="{Binding CorrectiveActionTaken, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
AutoSelectOnEdit="True" EditTriggers="CellClick" />
C#
private void FilterByCorrectiveActionRequired(object sender, MouseButtonEventArgs e)
{
this.NearMissRadGridView.FilterDescriptors.Clear();
FilterDescriptor descriptor = new FilterDescriptor();
descriptor.Member = "CorrectiveActionRequired";
descriptor.Operator = FilterOperator.IsEqualTo;
descriptor.Value = true;
this.NearMissRadGridView.FilterDescriptors.Add(descriptor);
}
尝试将 Member
属性 设置为 "CorrectiveActionTaken",这是 属性 的实际名称(我想):
private void FilterByCorrectiveActionRequired(object sender, MouseButtonEventArgs e)
{
this.NearMissRadGridView.FilterDescriptors.Clear();
FilterDescriptor descriptor = new FilterDescriptor();
descriptor.Member = "CorrectiveActionTaken"; //<--
descriptor.Operator = FilterOperator.IsEqualTo;
descriptor.Value = true;
this.NearMissRadGridView.FilterDescriptors.Add(descriptor);
}