我正在尝试使用 DevExpress ASPxGridView 来显示一些数据。我需要允许我的用户在特定列上进行过滤,并且我想让他们在两个日期之间进行过滤。
我知道这可以通过使用 FilterBar 来实现,但我想尝试在实际的过滤器行(出现在标题下方的行)中执行它,可能作为两个日期选择框,(一个从,到组合)。
任何如何修改 FilterRow 的想法都会很有用,
谢谢
我正在尝试使用 DevExpress ASPxGridView 来显示一些数据。我需要允许我的用户在特定列上进行过滤,并且我想让他们在两个日期之间进行过滤。
我知道这可以通过使用 FilterBar 来实现,但我想尝试在实际的过滤器行(出现在标题下方的行)中执行它,可能作为两个日期选择框,(一个从,到组合)。
任何如何修改 FilterRow 的想法都会很有用,
谢谢
只是为将来可能有相同问题的任何人提供的更新:
想办法做到这一点:
在你的 DevExpress ASPxGridView 上,在“AutoFilterCellEditorInitialize”上添加一个事件方法,并在此处截取创建。
然后,您可以通过对列进行简单检查来将其他控件添加到过滤器行中;例如:
protected void gridView_AutoFilterCellEditorInitialize(object sender, ASPxGridViewEditorEventArgs e)
{
if (e.Column.Caption.Equals("FieldName"))
{
e.Editor.Controls.Add( new ASPxDateEdit() );
}
}
希望这可以帮助任何有类似问题的人!
创建具有相同日期的第二列。然后,您可以使用“大于”过滤器将原始列用作来自列。通过具有“小于”过滤器,第二列可以是 to 列。然后,您可以通过向列添加空白 DataItemTemplate 来隐藏第二列中的数据。这有点笨拙,但可能会做你想做的事。
看看来自 devexpress 社区的关于自定义行过滤器的这篇文章,它提出了一种可能的解决方法。