WPF DataGrid: Make cells readonly

WpfDatagrid

Wpf Problem Overview


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?

Wpf Solutions


Solution 1 - Wpf

Set DataGrid's IsReadOnly property to true.

<DataGrid Grid.Row="1" Grid.Column="1" Name="Grid" ItemsSource="{Binding}"
    IsReadOnly="True" AutoGenerateColumns="False" >

Solution 2 - Wpf

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>

Solution 3 - Wpf

    <DataGrid x:Name="dgUsers" 
    ...
    $dgUsers = $Form.FindName("dgUsers")
    ....
    # Make all columns cells readonly
    $dgUsers.Columns | ForEach-Object { $_.IsReadOnly = $True }

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestioncrauscherView Question on Stackoverflow
Solution 1 - WpfTaylor LeeseView Answer on Stackoverflow
Solution 2 - WpfParisaView Answer on Stackoverflow
Solution 3 - WpfTony OrphansonView Answer on Stackoverflow