远程网格是在点击其他网格后构建的。
我想用AutoGenerateColumns="True"
创建grid2列。
点击grid1后,有回发,我得到grid1的值 所以我可以获得更多数据来绑定grid2。
protected void grid1_ItemCommand(object sender, GridCommandEventArgs e)
{
if (e.CommandName == "RowClick")
{
tableID = Convert.ToInt32(((GridDataItem)e.Item).GetDataKeyValue("Id"));
grid2.Rebind();
}
}
点击后我设置了grid2的数据源:
protected void grid2_NeedDataSource(object sender, GridNeedDataSourceEventArgs e)
{
grid2.DataSource = data;
grid2.Visible = data.Count > 0;
}
如何为某些列设置Templatefilter?
答案 0 :(得分:0)
您应该尝试使用_prerender在代码中设置过滤器。 这里有一个例子,我发现您可以根据需要自定义过滤器:
protected void RadGrid1_PreRender(object sender, EventArgs e)
{
//if (!Page.IsPostBack)
//{
RadGrid1.MasterTableView.FilterExpression = "([Country] LIKE \'%UK%\') ";
GridColumn column = RadGrid1.MasterTableView.GetColumnSafe("Country");
column.CurrentFilterFunction = GridKnownFunction.StartsWith;
column.CurrentFilterValue = "UK";
RadGrid1.MasterTableView.Rebind();
//}
}
尝试并且很高兴知道它是否适合您。
<强>更新强> 发回评论
答案 1 :(得分:0)
我的工作代码:
protected void grid2_ColumnCreated(object sender, GridColumnCreatedEventArgs e)
{
if (e.Column.UniqueName == "Description")
{
GridBoundColumn bCol = e.Column as GridBoundColumn;
if (bCol != null)
{
TemplateAutoCompleteFilter template = new TemplateAutoCompleteFilter(
RadComboBoxFilter.Contains, data.Select(r => r.Name).ToArray());
bCol.FilterTemplate = template;
}
}
}