У меня есть RibbonApplicationMenu в моем приложении аналогично этот пример:Различного поведения в RibbonApplicationMenu команда
<RibbonApplicationMenu>
<RibbonApplicationMenuItem Header="Open Project..." Command="{Binding OpenProjectCommand}" />
<RibbonApplicationMenuItem Header="Save Project..." Command="{Binding SaveProjectCommand}" />
<RibbonApplicationMenuItem Header="Exit" Command="{Binding CloseWindowCommand}" CommandParameter="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type RibbonWindow}}}" />
<RibbonApplicationMenu.FooterPaneContent>
<RibbonButton Label="Exit" Command="{Binding CloseWindowCommand}" CommandParameter="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type RibbonWindow}}}" />
</RibbonApplicationMenu.FooterPaneContent>
</RibbonApplicationMenu>
private void CloseWindow (Object parameter)
{
((Window) parameter).Close();
}
В примере есть элемент RibbonApplicationMenuItem и RibbonButton связан с одной и той же командой и имеющие один и тот же параметр, передаваемым. Команда выполняет функцию CloseWindow(). Мне любопытно, что при нажатии кнопки RibbonApplicationMenuItem параметр функции является указателем на RibbonWindow. Однако при нажатии кнопки RibbonButton параметр функции равен нулю.
Почему поведение должно отличаться?
Что бы нормальный способ положить кнопку закрытия в сноске? –
Я бы сказал, второй вариант. (Извините за задержку!) – Dusan
Второй вариант исправил мою проблему. Странно, у меня не было ошибки привязки в окне «Выход», хотя он не смог найти мой CloseWindowCommand. –