MenuItem с MenuItem из списка - PullRequest
       1

MenuItem с MenuItem из списка

0 голосов
/ 10 октября 2019

Следующий код создает MenuItems из списка внутри другого MenuItem. Я воссоздаю опцию недавних файлов, но она создает контейнер внутри другого контейнера при создании подпункта.

<MenuItem Header="_Recent" Height="25" ItemsSource="{x:Static cl_resources:MenuActions.Recent}">
   <MenuItem.Icon>
      <Image Source="/Resources/Icons/MenuBar/list.ico" Height="25"/>
   </MenuItem.Icon>
   <MenuItem.ItemTemplate>
     <DataTemplate>
        <MenuItem Header="{Binding}" Click="MenuItem_Recent_Click" Height="25" Cursor="Hand">
           <MenuItem.Icon>
              <Image Source="/Resources/Icons/MenuBar/document.ico" Height="25"/>
           </MenuItem.Icon>
        </MenuItem>
      </DataTemplate>
   </MenuItem.ItemTemplate>
</MenuItem>

Это Результат , который я получаю, я хочучтобы отобразить только то, что помечено как 1, и удалить часть 2.

Надеюсь, вопрос был достаточно ясен, спасибо.

1 Ответ

0 голосов
/ 10 октября 2019

Замените MenuItem в DataTemplate на StackPanel, Grid или любую другую панель, которая вам нравится.

Был задан аналогичный вопрос , уже заданный. В основном MenuItem.ItemTemplate не должен содержать MenuItem. Родительский элемент MenuItem автоматически создает свои подэлементы MenuItem и устанавливает для их содержимого указанное значение MenuItem.ItemTemplate.

<DataTemplate>
    <StackPanel Orientation="Horizontal" Click="MenuItem_Recent_Click" Height="25" Cursor="Hand">
        <Image Source="/Resources/Icons/MenuBar/document.ico" Height="25"/>
        <TextBlock Text="{Binding}"/>
    </StackPanel>
</DataTemplate>
.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...