0
私はすべてのUI-EventをViewModelのコマンドに直接バインドしたいと思います。 これを行う方法はありますか?UWP?UWPのコマンドへのUi-Eventsのバインド
私はUWPコミュニティツールキットを使用しており、Hamburger-Menu-Item-Clickをコマンドにバインドしたいと考えています。
おかげ トビアス
私はすべてのUI-EventをViewModelのコマンドに直接バインドしたいと思います。 これを行う方法はありますか?UWP?UWPのコマンドへのUi-Eventsのバインド
私はUWPコミュニティツールキットを使用しており、Hamburger-Menu-Item-Clickをコマンドにバインドしたいと考えています。
おかげ トビアス
[OK]を私はそのための解決策を見つけました。 あなたはここでそれを見つけることができます:Behaviors in UWP (Event trigger command error
私はここに私の手順を繰り返すことになります:
1 - パッケージ
Install-Package Microsoft.Xaml.Behaviors.Uwp.Managed
2をインストールしてください - あなたは図の参照を含める
xmlns:i="using:Microsoft.Xaml.Interactivity"
xmlns:core="using:Microsoft.Xaml.Interactions.Core"
、3- ViewModelにコマンドを追加します
public DelegateCommand MenuItemCommand { get; set; }
public void InitCommands()
{
MenuItemCommand = new DelegateCommand(MenuItemClicked);
}
private void MenuItemClicked()
{
//do something when clicked
}
4 - (I参照:...-タグ)ビュー内のコマンドへのメニュー項目のClickイベントをバインドし、私はメニューアイテムをクリックしたときに知って
<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
<controls:HamburgerMenu x:Name="HamburgerMenuControl"
PaneBackground="Black"
Foreground="White"
ItemTemplate="{StaticResource DefaultTemplate}"
OptionsItemTemplate="{StaticResource DefaultTemplate}"
ItemsSource="{Binding MenuItems}"
OptionsItemsSource="{Binding MenuOptionItems}"
>
<i:Interaction.Behaviors>
<core:EventTriggerBehavior EventName="ItemClick">
<core:InvokeCommandAction Command="{Binding MenuItemCommand}"></core:InvokeCommandAction>
</core:EventTriggerBehavior>
</i:Interaction.Behaviors>
<Frame x:Name="ContentFrame"/>
</controls:HamburgerMenu>
</Grid>
をそれ
はい、ありがとうございます!それは私が必要なものです! –