Задать вопрос
drem1lin
@drem1lin
чуть программист, чуть чуть админ...

Как сделать различное контекстное меню для ListBox и ListBoxItem?

Как сделать различное контекстное меню для ListBox и ListBoxItem? Ну может даже не различное меню, мне надо, что бы на пустом месте по правой кнопке был пункт очистить все, а на объекте был пункт удалить.
  • Вопрос задан
  • 808 просмотров
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Stepik
    Профессия "C# разработчик"
    1 неделя
    Далее
  • XYZ School
    C# для разработки игр
    5 месяцев
    Далее
  • Учебный центр IBS
    DEV-001_NET Шаблоны проектирования GoF. Редакция для .NET
    1 неделя
    Далее
Пригласить эксперта
Ответы на вопрос 2
WPF
<ListBox Name="ItemList" 
                                         ItemsSource="{Binding XXX}" 
                                         SelectedItem="{Binding Path=XXX, UpdateSourceTrigger=PropertyChanged, ValidatesOnDataErrors=True, Mode=TwoWay}"
                                         DisplayMemberPath="XXX">
                                    <ListBox.ContextMenu>
                                        <ContextMenu>
                                            <MenuItem Header="Create" Command="{Binding CreateNewItemCommand}"/>
                                            <MenuItem Header="Clone" Command="{Binding CloneSelectedItemCommand}"/>
                                            <MenuItem Header="Delete" Command="{Binding DeleteSelectedItemCommand}"/>
                                        </ContextMenu>
                                    </ListBox.ContextMenu>
                                </ListBox>


Активность кнопок меню определяется свойством во ViewModel по имени YYYCommand в .

Команды
Ответ написан
Комментировать
@Sumor
Ну собственно можно сделать так как вы хотите - у ListBox своё контекстное меню, а у элементов, описанных в ItemTemplate описать своё контекстное меню. С помощью команд пункты меню можно связать.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы