我发布了一个关于在 WPF 中使用 lambda 显示两列的问题,尽管我收到了很好的建议,但我相信我试图让事情变得更复杂,所以我采取了不同的方法。我的 Silverlight 业务应用程序填充了一个datagrid1
使用
DBDomainContext context = new DBDomainContext();
dataGrid1.ItemsSource = context.DBTables;
context.Load(context.GetDataBasesQuery());
该GetDataBasesQuery()
方法在 domainservices.cs 中定义如下:
public IQueryable<DBTable>GetDataBases()
{
return this.ObjectContext.DBTables;
}
这填充了datagrid1
10 列,AutoGenerateColumns="True"
我可以按如下方式隐藏列:
void DGPro_AutoGeneratingColumnForDB(object sender, DataGridAutoGeneratingColumnEventArgs e)
{
if (e.PropertyName == "col1")
e.Cancel = true;
if (e.PropertyName == "col2")
e.Cancel = true;
}
如何根据用户输入隐藏它们?我想使用一个复选框让用户选择 col1 或 col2 隐藏。非常感谢您的帮助。