XamDataGrid -如何从后面的代码访问字段
本文关键字:代码 访问 字段 XamDataGrid | 更新日期: 2023-09-27 18:04:34
我有一个XamDataGrid,它被填充在一个按钮点击。
<Expander Header="{Binding Path=Tag, ElementName=EditGridExpanderBar}" Tag="Edit Grid" Visibility="Hidden" Height="Auto" Name="EditGridExpanderBar" FontWeight="Bold" Background="#6688A4" Margin="0,0,5,3" Padding="3,0,0,0" Foreground="White">
<igDP:XamDataGrid Name="EditGrid">
</igDP:XamDataGrid>
</Expander>
下面是填充XamDataGrid的代码。
private void EditAllocations_Click (object sender, RoutedEventArgs e)
{
ObservableCollection<LobAllocation> ds = _controller.PlanitariumModel.Entity.LobAllocations;
if (editGridClickCheck((Button)sender, ds.Count))
{
EditGrid.DataSource = ds;
}
}
在这里,实体有一些元数据字段,这些字段与网格中的实际列一起显示。我想手动隐藏这些字段。
关于如何做到这一点,有什么建议吗?
不能隐藏特定字段。你能做的是关闭自动列生成功能,该功能基于绑定到数据网格的类的公共属性。此外,您需要指定应该在数据网格中显示哪些属性。
试试:
<igDP:XamDataGrid Name="EditGrid">
<igDP:XamDataGrid.FieldLayouts>
<igDP:FieldLayout>
<igDP:Field Name="EntityProperty-1" Label="Property1" />
<igDP:Field Name="EntityProperty-2" Label="Property2" />
</igDP:FieldLayout>
</igDP:XamDataGrid.FieldLayouts>
<igDP:XamDataGrid.FieldLayoutSettings>
<igDP:FieldLayoutSettings AutoGenerateFields="False"/>
</igDP:XamDataGrid.FieldLayoutSettings>
</igDP:XamDataGrid>
在<igDP:FieldLayout>
块中,您需要指定要呈现的Datagrid的列。使用下面的代码块,您可以禁用自动生成列。
<igDP:XamDataGrid.FieldLayoutSettings>
<igDP:FieldLayoutSettings AutoGenerateFields="False"/>
</igDP:XamDataGrid.FieldLayoutSettings>