WPF DataGrid:使单元格只读
Posted
技术标签:
【中文标题】WPF DataGrid:使单元格只读【英文标题】:WPF DataGrid: Make cells readonly 【发布时间】:2011-01-30 23:28:26 【问题描述】:我使用以下DataGrid
<DataGrid Grid.Row="1" Grid.Column="1" Name="Grid" ItemsSource="Binding" AutoGenerateColumns="False" >
<DataGrid.Columns>
<DataGridTextColumn Header="Name" Width="100" Binding="Binding Path=Name"></DataGridTextColumn>
<DataGridTextColumn Header="OldValue" Width="100" Binding="Binding Path=OldValue"></DataGridTextColumn>
<DataGridTextColumn Header="NewValue" Width="100*" Binding="Binding Path=NewValue"></DataGridTextColumn>
</DataGrid.Columns>
</DataGrid>
如何将单元格设为只读?
【问题讨论】:
【参考方案1】:将 DataGrid 的 IsReadOnly 属性设置为 true。
<DataGrid Grid.Row="1" Grid.Column="1" Name="Grid" ItemsSource="Binding"
IsReadOnly="True" AutoGenerateColumns="False" >
【讨论】:
【参考方案2】:如果您想将某列的单元格设为只读,您可以为该列设置 IsReadOnly:
<DataGridTextColumn Header="Name" IsReadOnly="True" Width="100" Binding="Binding Path=Name"></DataGridTextColumn>
【讨论】:
+1 接受的答案是我所需要的,但我相信这个答案会对其他人有所帮助。【参考方案3】: <DataGrid x:Name="dgUsers"
...
$dgUsers = $Form.FindName("dgUsers")
....
# Make all columns cells readonly
$dgUsers.Columns | ForEach-Object $_.IsReadOnly = $True
【讨论】:
以上是关于WPF DataGrid:使单元格只读的主要内容,如果未能解决你的问题,请参考以下文章
在某些条件下使用 ComboBox 只读创建一个单元格 WPF DataGrid
如何让 WPF DataGrid 单元格右对齐而不使新行上的可选区域变小?