我遇到RadFilter没有正确检测列的问题。我通过Asp中的代码绑定我的RadGrid,如:
RadGrid1.DataSource = myDataSource; RadGrid.DataBind();
RadFilter只绑定那些绑定的列,并忽略那些列中的列。这是一个已知的问题?因为我没有看到任何线索谈论这个问题。立即等待帮助。
此致 瓦西姆。
答案 0 :(得分:2)
如果我理解正确,您需要将FilterFieldEditors添加到RadFilter,以用于未在网格的DataSource中表示的任何字段。
您可以使用以下代码动态添加过滤器。
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
if (!IsPostBack)
{
var fieldName = "myDynamicFilterField";
var friendlyName = "Friendly Dynamic Field";
var newTextFieldEditor = new RadFilterTextFieldEditor();
filter.FieldEditors.Add(newTextFieldEditor);
newTextFieldEditor.FieldName = fieldName; // name filter will used for filter exressions
newTextFieldEditor.DisplayName = friendlyName; // name use will see when they selected a field to filter
// ** Repeat for all dynamic fields **
}
}
我能够使用自动生成的列和自定义添加的列获得工作版本,但遇到了许多其他问题。我最终只是从数据源动态创建所有过滤器字段(如上所示)并将过滤器表达式应用于网格。