Установка привязок команд через XAML в формах PageFunction

Если вы создаете окно WPF или страницу WPF, вы можете привязать команды к функциям в XAML.

<Page x:Class="WpfPageApplication.Page1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  xmlns:WpfPageApplication="clr-namespace:WpfPageApplication"
Title="Page1" Background="LightGray"
>
<Page.CommandBindings>
    <CommandBinding 
        Command="WpfPageApplication:PizzaCommands.ConfigurePizza" 
        Executed="OnConfigurePizza" />
</Page.CommandBindings>

Существует другой тип формы WPF: PageFunction, Но это не позволяет вам печатать:

<PageFunction.CommandBindings>

Я могу угадать два возможных объяснения:

  • Так как PageFunction является универсальным объектом, вы должны как-то ввести общие параметры в XAML.
  • Это просто несоответствие в рамках.

Кто-нибудь знает, как я могу настроить CommandBindings для PageFunction в XAML? (Я знаю, что могу сделать это в коде, но это не главное).

1 ответ

Решение

В конечном итоге PageFunction является производной от Page, поэтому я вполне уверен, что вы можете просто использовать <Page.CommandBindings> определить ваши командные привязки. Конечно, вы можете использовать <Page.Resources> в PageFunction, чтобы определить его ресурсы.

Почему ты не можешь использовать <PageFunction.CommandBindings>? Я не знаю, но я думаю, что вы, вероятно, правы, когда говорите, что это связано с тем, что PageFunction является универсальным типом. Вам понадобится какой-то способ в XAML, чтобы сказать, что является базовым типом. Я думаю, что это возможно в.NET 4.0 версии XAML, но не в текущей версии.

Другие вопросы по тегам