RibbonApplicationMenuItem имеет неправильный CurrentItem? - PullRequest
0 голосов
/ 10 августа 2011

У меня есть RibbonApplicationMenuItem с подэлементами того же вида. Подэлементы добавляются кодом.

После выбора RibbonApplicationMenuItem при обработке события click отображается неправильный currentItem.

CurrentItem всегда является первым элементом в моей коллекции RibbonApplicationMenuItems.

 private void ApplicationOpenPileList_Click(object sender, RoutedEventArgs e) {
     RibbonApplicationMenuItem SourceApplicationMenu = null;
     RibbonApplicationMenuItem SenderApplicationMenu = null;
     Pile currentPile = null;

     if (e.OriginalSource != null) {
        if (sender is RibbonApplicationMenuItem && e.OriginalSource is RibbonApplicationMenuItem) {
           SenderApplicationMenu = sender as RibbonApplicationMenuItem;
           SourceApplicationMenu = e.OriginalSource as RibbonApplicationMenuItem;               
        }                                   
     }
  }

SourceApplicationMenu содержит нажатой MenuItem, но мой подключенный объект отсутствует. SenderApplicationMenu содержит соответствующий ответ ParentMenuItem со свойством CurrentItem.

Событие назначается в XAML-коде ленточного окна для основного элемента:

        <ribbon:Ribbon.ApplicationMenu>
            <ribbon:RibbonApplicationMenu SmallImageSource="Resources\Icons\Scanner.ico">
                <ribbon:RibbonApplicationMenuItem Header="Neu" ImageSource="Resources\Icons\report_add.png"/>
                <ribbon:RibbonApplicationMenuItem Header="Öffnen" ImageSource="Resources\Icons\open_folder.png"  Name="ApplicationOpenPileList" Click="ApplicationOpenPileList_Click" />                                        
                <ribbon:RibbonApplicationMenuItem Header="Dokumententypen" ImageSource="Resources\Icons\application_form.png" DisplayMemberPath="Name" Click="RibbonApplicationMenuItem_Click"  />
                <ribbon:RibbonApplicationMenuItem Header="Schließen" ImageSource="Resources\Icons\cross.png"/>
            </ribbon:RibbonApplicationMenu>
        </ribbon:Ribbon.ApplicationMenu>

В этом случае CurrentItem всегда содержит первый SubItem с соответствующим объектом. Есть идеи?

1 Ответ

0 голосов
/ 15 сентября 2011

Проблема была довольно простой.

У SubItems нет обработчика события Click, поэтому события были направлены верхнему обработчику.

Теперь я реализовал обработчик для каждогоПредмет и все нормально.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...