0

我正在使用 DevExpress WPF 控件和 Simple MVVM Toolkit 开发基于 MVVM 的系统。有一种情况,我正在显示一个 GridControl,其中网格中每一行的视图模型都有一个布尔属性(等等)。此属性在 GridControl 中显示为复选框。

我想在用户选择或取消选择该复选框后立即更新窗口中的另一个视图,但这似乎不起作用。我已经在属性设置器中放置了一些代码来更新视图,但这仅在用户单击 GridControl 的行之外时执行。所以执行setter需要2个步骤:

  1. 选中或取消选中复选框
  2. 单击以选择网格控件中的另一行

我可以在第 1 步之后立即执行设置器吗?

我可以想象它与 Simple MVVM Toolkit 行为有关,即当视图模型处于“编辑”状态时,它会被克隆,并且只有在“编辑”状态结束时,属性才会设置为新值。

我很感激对此的任何见解。

最好的问候,~Rob

4

1 回答 1

0

这已经在这里讨论过好几次了。只需像这样使用 DataGridTemplateColumn:

    <DataGridTemplateColumn Width="Auto" Header="Selected">
      <DataGridTemplateColumn.CellTemplate>
        <DataTemplate>
          <Grid>
            <CheckBox IsChecked="{Binding IsSelected, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" 
                            HorizontalAlignment="Center" 
                            VerticalAlignment="Center"/>
          </Grid>
        </DataTemplate>
      </DataGridTemplateColumn.CellTemplate>
    </DataGridTemplateColumn>
于 2014-01-08T10:28:07.030 回答