我有一个GridView
控件正在使用IList<>
DataSource
。List<>
。 class Foo {
public string prop1 {get;set;}
public int prop2 {get;set;}
public int prop3 {get;set;}
public float prop4 {get;set;}
}
包含以下类型的对象:
List
当我将GridView
绑定到我可以指定的prop1 and prop2
时,有没有办法,例如,我只想为{{1}}生成列?谢谢你的帮助
编辑:
我的总体目标是在表单上设置一个复选框,允许用户在查看完整表和缩短表之间切换,只显示最重要的列。真实对象有50多个属性,如果选中复选框,我只想显示最重要的10个属性。
答案 0 :(得分:2)
如果您需要两个视图(重要列/所有列),请在复选框的事件处理程序中设置列的可见性:
gridView.Columns["Prop1"].Visible = showAllColumnsCheckBox.Checked;
gridView.Columns["Prop2"].Visible = showAllColumnsCheckBox.Checked;
...
答案 1 :(得分:1)
我不确定这是否有效,但您可以尝试:
<asp:TemplateField HeaderText="Prop1">
<ItemTemplate>
<%# ((Foo)Container.DataItem).prop1 %>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Prop2">
<ItemTemplate>
<%# ((Foo)Container.DataItem).prop2 %>
</ItemTemplate>
</asp:TemplateField>