Problem Description
I have a DataGrid named data_grid_1, which has two columns header1 and header2 and is filled with SomeClass-object's inside the data_grid_1 Loaded-event-handler.
XAML-Code:
<Window x:Class="WpfApplication1.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525">
<Grid>
<DataGrid x:Name="data_grid_1"
HorizontalAlignment="Left"
Margin="10,10,0,0"
VerticalAlignment="Top"
Height="303" Width="497"
Loaded="data_grid_1_Loaded">
<DataGrid.Columns>
<DataGridTextColumn Header="header1"
Binding="{Binding some_field_variable_2, Mode=OneWay}" />
<DataGridTextColumn Header="header2"
Binding="{Binding some_field_variable_3, Mode=OneWay}" />
</DataGrid.Columns>
</DataGrid>
</Grid>
</Window>
XAML.CS-Code:
namespace WpfApplication1
{
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
private void data_grid_1_Loaded(object sender, RoutedEventArgs e)
{
data_grid_1.Items.Add(new SomeClass(1, "data_grid_1-String1", "data_grid_1-Text1"));
data_grid_1.Items.Add(new SomeClass(2, "data_grid_1-String2", "data_grid_1-Text2"));
data_grid_1.Items.Add(new SomeClass(3, "data_grid_1-String3", "data_grid_1-Text3"));
data_grid_1.Items.Add(new SomeClass(4, "data_grid_1-String4", "data_grid_1-Text4"));
}
}
}
SomeClass.cs
namespace WpfApplication1
{
class SomeClass
{
public int some_field_variable_1 { get; internal set; }
public string some_field_variable_2 { get; internal set; }
public string some_field_variable_3 { get; internal set; }
public SomeClass(int some_field_variable_1,
string some_field_variable_2,
string some_field_variable_3)
{
this.some_field_variable_1 = some_field_variable_1;
this.some_field_variable_2 = some_field_variable_2;
this.some_field_variable_3 = some_field_variable_3;
}
}
}
Question
I want to make the header2-column editable, so if the user clicks and changes the value of a row in header2-column the changes are written into the SomeClass-object, which were previously added inside data_grid_1_Loaded.
How can i make the second column editable?