我在 DataGrid 中遇到问题。我需要在数据网格中使结果可点击。为此,我需要使用 <DataGridTemplateColumn>
显示一些来自绑定(bind)结果的结果和一些可点击的结果。
<DataGrid Name="Result" IsReadOnly="True" ItemsSource="{Binding Result}" AutoGenerateColumns="True" Height="200">
<DataGridTemplateColumn Header="Image">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<StackPanel>
<Button Content="{Binding Image}" Name="Image" Click="Button_Click" />
</StackPanel>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
但结果我得到了重复的列名,因为一个来自绑定(bind)结果,另一个来自 <datagridtemplatecolumn>
.有人可以帮我从绑定(bind)结果中删除重复的列名吗?
最佳答案
Can some one please help me to remove duplicate column name from binding result.
只需将 AutoGenerateColumns
属性设置为 False
:
<DataGrid Name="Result" IsReadOnly="True" ItemsSource="{Binding Result}" AutoGenerateColumns="False" Height="200">
<DataGrid.Columns>
<DataGridTemplateColumn Header="Image">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<StackPanel>
<Button Content="{Binding Image}" Name="Image" Click="Button_Click" />
</StackPanel>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
</DataGrid.Columns>
</DataGrid>
然后 DataGrid
将不会生成任何列,您只会看到您在 XAML 标记中明确定义的列,即本例中的“图像”列。
关于c# - 使用 DataGridTemplateColumn.CellTemplate 并绑定(bind)到数据表时,DataGrid 中的重复列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49005305/