У меня есть приложение Silverlight 4, созданное в MVVMLight.
В представлении у меня есть DataGrid, который привязан к моей ViewModel, у которого SeletedItem снова привязан к SelectedItem в моей ViwModel:
<sdk:DataGrid Name="MyGrid" AutoGenerateColumns="False" Grid.Row="3" MaxHeight="200" HorizontalAlignment="Left" Margin="0,0,0,0" VerticalAlignment="Top" RowHeight="35"
SelectedItem="{Binding SelectedItem, Mode=TwoWay, ValidatesOnNotifyDataErrors=False}" ItemsSource="{Binding Items}" >
Это все работает так же, как и в случае, когда я нажимаю на элемент в сетке, SelectedItem в моей ViewModel установлен правильно.
Теперь я добавил кнопку в строки в Datagrid и добавил EventToCommand к кнопке, которая привязана к той же модели представления:
<Button Content="Update" >
<i:Interaction.Triggers>
<i:EventTrigger EventName="Click">
<Command:EventToCommand Command="{Binding Source={StaticResource Locator}, Path=MainDialog.ButtonCommand, Mode=TwoWay}" />
</i:EventTrigger>
</i:Interaction.Triggers>
Эта команда запускается и работает правильно. Проблема Свойство SelectedItem, которое было установлено ранее и которое я теперь хочу использовать, установлено в значение null !!
Почему EventToCommand сбрасывает свойство SelecteedItem и как его остановить, чтобы я мог его использовать ???