MVVM不起作用的Silverlight GridViewComboBoxColumn绑定命令

MVVM不起作用的Silverlight GridViewComboBoxColumn绑定命令,silverlight,binding,mvvm,telerik,command,Silverlight,Binding,Mvvm,Telerik,Command,我正在尝试从GridViewColumn运行命令,并且RadGridView已绑定到我的ViewModel。下面的代码运行该命令,但当我从组合框中选择一个值时,它会立即保存该行,而不允许我首先更改其他单元格。无论我是否将命令绑定到RADComboBox,这种行为都会发生。如果我取消命令,仍然会发生 XAML: 当我从CellEditTemplate中取出ComboBox并尝试使用GridViewComboBox时,我不知道如何使绑定工作,但它不会触发RowEditEnded,只需选择下拉菜单,以

我正在尝试从GridViewColumn运行命令,并且RadGridView已绑定到我的ViewModel。下面的代码运行该命令,但当我从组合框中选择一个值时,它会立即保存该行,而不允许我首先更改其他单元格。无论我是否将命令绑定到RADComboBox,这种行为都会发生。如果我取消命令,仍然会发生

XAML:

当我从CellEditTemplate中取出ComboBox并尝试使用GridViewComboBox时,我不知道如何使绑定工作,但它不会触发RowEditEnded,只需选择下拉菜单,以便部件正确使用以下代码:

<telerik:GridViewComboBoxColumn Header="Material Type" 
                                                  ItemsSource="{Binding DataSource.AllTypeCodes, Source={StaticResource DCP}}"
                                                  SelectedValueMemberPath="Code"
                                                  DataMemberBinding="{Binding Path=MaterialType, Mode=TwoWay}"
                                                  DisplayMemberPath="Display">
                    <i:Interaction.Triggers>
                       <i:EventTrigger EventName="SelectionChanged">
                          <i:InvokeCommandAction Command="{Binding DataSource.MaterialTypeChangedCommand, Source={StaticResource DCP}}"/>
                       </i:EventTrigger>
                    </i:Interaction.Triggers>
                 </telerik:GridViewComboBoxColumn>

如果不清楚,请告诉我,已经很晚了,我可能不清楚。谢谢你能提供的任何帮助。我应该注意,当在CellEditTemplate中设置时,RowEditEnded在我的应用程序中的其他下拉列表中的行为也与此类似。转换为到GridViewComboBoxCOlumn可以解决这个问题,但是绑定问题…

您找到了解决方案吗?我的GrigViewComboxColumn的SelectionChange需要触发一个事件。
public RelayCommand MaterialCodeChangedCommand { get; private set; }
//IN Constructor
this.MaterialTypeChangedCommand = new RelayCommand(MaterialTypeChange);

private void MaterialCodeChange()
  {
     //Command code here
  }
<telerik:GridViewComboBoxColumn Header="Material Type" 
                                                  ItemsSource="{Binding DataSource.AllTypeCodes, Source={StaticResource DCP}}"
                                                  SelectedValueMemberPath="Code"
                                                  DataMemberBinding="{Binding Path=MaterialType, Mode=TwoWay}"
                                                  DisplayMemberPath="Display">
                    <i:Interaction.Triggers>
                       <i:EventTrigger EventName="SelectionChanged">
                          <i:InvokeCommandAction Command="{Binding DataSource.MaterialTypeChangedCommand, Source={StaticResource DCP}}"/>
                       </i:EventTrigger>
                    </i:Interaction.Triggers>
                 </telerik:GridViewComboBoxColumn>