Создать класс:
public class MyDetails
{
private string firstName;
public string FirstName
{
get { return firstName; }
set
{
firstName = value;
OnPropertyChange("FirstName");
}
}
private string lastName;
public string LastName
{
get { return lastName; }
set
{
lastName = value;
OnPropertyChange("LastName");
}
}
}
Теперь создать коллекцию, в которой вы будете добавлять данные в свой класс ViewModel, как показано ниже:
private ObservableCollection<MyDetails> myCollection;
public ObservableCollection<MyDetails> MyCollection
{
get { return myCollection; }
set { myCollection = value; }
}
Теперь, добавить данные в выше коллекции так, данные будут отражаются в сетке.
Теперь Перейти к .xaml файл и записать создать сетку данных, как показано ниже:
Сделать столбец в DataGrid к UpdateSourceTrigger=LostFocus
и Mode=TwoWay
, как показано ниже:
<Grid>
<StackPanel>
<DataGrid HeadersVisibility="None" ColumnWidth="*" ItemsSource="{Binding MyCollection}">
<DataGrid.Columns>
<DataGridTextColumn Header="First Name" Binding="{Binding FirstName, Mode=TwoWay, UpdateSourceTrigger=LostFocus}"/>
<DataGridTextColumn Header="Last Name" Binding="{Binding LastName, Mode=TwoWay, UpdateSourceTrigger=LostFocus}" />
</DataGrid.Columns>
</DataGrid>
</StackPanel>
</Grid>
Add, ваша кнопка .xaml привязать его для управления и записи метода для сохранения данных в viewModel.
Возможный дубликат [Как читать значение из ячейки из WPF DataGrid?] (Http://stackoverflow.com/questions/5549321/how-to-read-value-from-a-cell-from-a -wpf-DataGrid) – DrewJordan