有没有办法让DataGrid在ReadOnly模式下具有列,但是Caret Visible?与使用IsReadOnlyCaretVisible属性的文本框类似? 如果设置IsReadOnly属性,则列将被禁用,并且无法单击该单元格。
<DataGrid ItemsSource="{Binding Customers}" AutoGenerateColumns="False">
<DataGrid.Columns>
<DataGridTextColumn Binding="{Binding Name}"></DataGridTextColumn>
<DataGridTextColumn Binding="{Binding Income}" IsReadOnly="True"></DataGridTextColumn>
</DataGrid.Columns>
</DataGrid>
答案 0 :(得分:1)
您可以使用TextBox创建DataGridTemplateColumn。参考下面的代码。
<DataGridTemplateColumn Header="Name">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<TextBox Text="{Binding Name}" IsReadOnly="True" IsReadOnlyCaretVisible="True"/>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>