2014-01-08 23 views
0

我正在開發一個基於MVVM的系統,包含DevExpress WPF控件和Simple MVVM Toolkit。 有一種情況我正在顯示一個GridControl,其中網格中每一行的視圖模型都有一個布爾屬性(等等)。該屬性作爲複選框顯示在GridControl中。GridView中檢查複選框後立即採取的行動

我想在用戶選擇或取消選中該複選框後立即更新窗口中的另一個視圖,但似乎不起作用。我已經在屬性設置器中放置了一些代碼來更新視圖,但只有在用戶單擊GridControl行之外時纔會執行此操作。 因此,需要2步執行二傳手:

  1. 選擇或取消複選框
  2. 單擊gridcontrol

我可以有步驟1之後執行的二傳手選擇另一行?

我可以想象它與簡單MVVM Tooklkit的行爲有關,當viewmodel處於其「編輯」狀態時,它被克隆,只有當「編輯」狀態結束時,屬性纔會設置爲新的價值。

我很感謝這方面的任何見解。

最好的問候, 〜羅布

+0

您是否嘗試在''Checkbox'' Binding'中添加'UpdateSourceTrigger = PropertyChanged'? – Sheridan

回答

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> 
+0

感謝您的快速回復。如果我的列是自動生成的呢? –

相關問題