我在DataGrid中遇到问题。我需要在datagrid中使结果可单击。为此,我需要使用<DataGridTemplateColumn>
<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>
但是在结果中我得到重复的列名,因为一个来自绑定结果而一个来自<datagridtemplatecolumn>
。有人可以帮我从绑定结果中删除重复的列名。
答案 0 :(得分:0)
有人可以帮我从绑定结果中删除重复的列名。
只需将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标记中明确定义的列,即&#34; Image&#34;在这种情况下的列。