Как сделать редактируемую сетку данных в wpf с помощью mvvm?

Я новичок в wpf. Я хочу использовать редактируемую сетку данных, добавлять, редактировать данные. Возможно ли это с помощью wpf? Может ли кто-нибудь дать ссылки на примере?

Спасибо SN

Ответ 1

DataGrid имеет встроенную функциональность. Вы можете установить свойства CanUserAddRows в true, чтобы позволить пользователю добавлять строки.

DataGrid редактируется по умолчанию, где каждый столбец имеет элемент управления редактирования, который позволяет редактировать его значение. По умолчанию DataGrid автоматически создает столбцы для каждого свойства в вашей модели, поэтому вам даже не нужно определять его столбцы.

Вот некоторые хорошие ссылки с подробными примерами, которые вы можете изучить:

http://wpftutorial.net/DataGrid.html

http://www.codeproject.com/Articles/30905/WPF-DataGrid-Practical-Examples

http://www.c-sharpcorner.com/UploadFile/mahesh/datagrid-in-wpf/

Удачи.

Ответ 2

У вас есть Xaml, как показано ниже

<Window x:Class="DatGrid.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"
    xmlns:local="clr-namespace:DatGrid">
<Window.DataContext>
    <local:ViewModel/>
</Window.DataContext>
<StackPanel/>
    <DataGrid ItemsSource="{Binding Path=Values}"></DataGrid>
</StackPanel>
</Window>

В ViewModel очень просто что-то вроде

class ViewModel
{
    public ObservableCollection<Example> Values
    {
        get;
        set;
    }
}
public class Example
{
    public string A
    {
        get;
        set;
    }
    public string B
    {
        get;
        set;
    }
}

В представлении вы всегда можете увидеть пустую строку, которую вы можете просто щелкнуть и набрать что-то, и нажать "Enter", она будет обновлена ​​до ViewModel