小编Ami*_*had的帖子

使用MVVM更改一行DataGrid时,将更改应用于模型

我有一个简单的场景,我有一个绑定到ObservableCollection的DataGrid,我希望用户能够动态添加一个新的ComplexType项(这意味着一行)。我的意思是,每当用户完成输入行数据时,都需要更新数据模型。问题是更改或添加行时未调用ViewModel的绑定。有谁知道如何在ViewModel中处理这种情况。我的直觉告诉我,在MVVM中应该很容易,但是我被卡住了!这是我的xaml:

<DataGrid x:Name="gd_Users"  CanUserDeleteRows="True" CanUserAddRows="True" CanUserAddRows="True" AutoGenerateColumns="False" ItemsSource="{Binding UserCollection,Mode=TwoWay}" SelectedItem="{Binding SelectedUser}" Margin="1,5" Grid.Column="1">
    <DataGrid.Columns>
        <DataGridTextColumn Header="header1" Width="50"  Binding="{Binding u_Code}"/>
        <DataGridTextColumn Header="Header2" Width="100" Binding="{Binding u_FirstName}"/>
        <DataGridTextColumn Header="header3" Width="150" Binding="{Binding u_LastName}" />
    </DataGrid.Columns>
</DataGrid>
Run Code Online (Sandbox Code Playgroud)

PS:我不想在后面的代码中使用“ RowEditEnding”之类的事件

c# wpf xaml datagrid mvvm

3
推荐指数
1
解决办法
430
查看次数

标签 统计

c# ×1

datagrid ×1

mvvm ×1

wpf ×1

xaml ×1