Использую контекстное меню для изменения строк DataGrid
. Каждый пункт меню представляет собой цвет, который применяется к строкам таблицы.
В коллекции Colors
сами цвета. Пользователь может удалять или добавлять свои.
Вынес прозрачный цвет из коллекции, чтобы пользователь не мог его удалить и этот пункт был доступен всегда.
Проблема с привязкой пункта меню "Без цвета".
Команда привязывается, а вот параметр команды, который содержит строки таблицы, которые нужно перекрасить, не привязывается. Хотя в ItemContainerStyle
параметр команды привязывается тем же способом и все остальное работает как надо. Но вот с пунктом "Без цвета" такой способ, почему-то, не работает.
В чем проблема?
<DataGrid.ContextMenu>
<MenuItem Header="Цвет">
<MenuItem.ItemsSource>
<CompositeCollection>
<MenuItem Header="Без цвета"
Command="{Binding ResultsVM.ResetColorCommand}"
CommandParameter="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type ContextMenu}}, Path=PlacementTarget.SelectedItems}"/>
<Separator />
<CollectionContainer Collection="{Binding Source={StaticResource Colors}}" />
<Separator />
<MenuItem Header="Редактировать метки" Click="miColorEdit_Click" />
</CompositeCollection>
</MenuItem.ItemsSource>
<MenuItem.ItemContainerStyle>
<Style TargetType="{x:Type MenuItem}">
<Setter Property="Command" Value="{Binding ChangeColorCommand}" />
<Setter Property="CommandParameter" Value="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type ContextMenu}}, Path=PlacementTarget.SelectedItems}" />
</Style>
</MenuItem.ItemContainerStyle>
</MenuItem>
</DataGrid.ContextMenu>
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Как сравнить элементы коллекции каждый с каждым? Немного обьясню, у меня есть метод, который работает с двумя обьектами, вызываю его так objectnamemethod(objectname1)в...
Как в Unity сделать эмуляцию нажатия клавиши на клавиатуре? Чтобы на него реагировали и внешние программыМышкой мы можем, например, подвигать...
На данный момент неспешно изучаю С# и немного С++Мне интересен необходимый багаж знании у С# разработчика