我在表单中有一个radGridView;我可以检查用户选择哪个过滤器? (例如:包含,不包含,开头等等。)如果选择了过滤器,那么它的输入是什么?
例:
我有一个名为'Title'的列,并且我选择了Contain过滤器,在该过滤器中我输入了“TEST”。我可以以某种方式获得所有这些信息吗?
我找到了解决方案。 radgridview具有“FilterDescriptors”属性,可以保存您在每个过滤器字段中键入的所有内容,还可以保存为您提供列的“PropertyName”。
所以你基本上可以这样做:
foreach (var descriptor in this.FilterDescriptors)
{
foreach (var column in this.MasterTemplate.Columns)
{
if (descriptor.PropertyName == column.FieldName)
{
//do stuff
}
}
}
是的你可以。我假设选择过滤器是使用复选框和过滤文本与文本框。
文本框有事件TextChanged
或KeyPress
,当用户键入一些文本时会触发该事件。
在这种情况下,您可以检查过滤器选择的已检查状态。
例:
private void textBox_search_TextChanged(object sender, EventArgs e)
{
string query = textBox_search.Text;
if(checkbox_contains.Checked)
{
//your filter logic
}
else if(checkbox_startsWith.Checked)
{
//your filter logic
}
//rest
}