Reputation: 6618
I use the following 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>
How can I make the cells readonly?
Upvotes: 61
Views: 51141
Reputation: 1
<DataGrid x:Name="dgUsers"
...
$dgUsers = $Form.FindName("dgUsers")
....
# Make all columns cells readonly
$dgUsers.Columns | ForEach-Object { $_.IsReadOnly = $True }
Upvotes: 0
Reputation: 206
If you want to make the cells of a certain column readonly, you can set IsReadOnly for that column:
<DataGridTextColumn Header="Name" IsReadOnly="True" Width="100" Binding="{Binding Path=Name}"></DataGridTextColumn>
Upvotes: 7
Reputation: 52400
Set DataGrid's IsReadOnly property to true.
<DataGrid Grid.Row="1" Grid.Column="1" Name="Grid" ItemsSource="{Binding}"
IsReadOnly="True" AutoGenerateColumns="False" >
Upvotes: 109