棱镜按钮点击命令
Prism Button click command
我尝试通过行为命令打开抽屉菜单(Syncfusion 控件)
Xaml
<Button x:Name="hamburgerButton"
HeightRequest="50" WidthRequest="50"
HorizontalOptions="Start" FontSize="20"
BackgroundColor="#1aa1d6" >
<Button.Behaviors>
<b:EventToCommandBehavior EventName="Clicked"
Command="{Binding HamburgerButton}" />
</Button.Behaviors>
虚拟机 cs
public DelegateCommand HamburgerButton { get; private set; }
public QuickPartViewModel(INavigationService navigationService)
{
HamburgerButton = new DelegateCommand(HamburgerButton_Clicked);
}
public void HamburgerButton_Clicked(object sender, EventArgs e)
{
navigationDrawer.ToggleDrawer();
}
如果 HamburgerButton_Clicked(object sender, EventArgs e) with arguments 那么我有错误 -// Argumment: cannot convert from 'method group' to Action
如果我删除 Argumments 它不起作用
你想多了。只需将命令绑定到按钮即可。
在页面中:
<Button Command="{Binding HamburgerCommand}" />
在视图模型中:
public QuickPartViewModel()
{
HamburgerCommand = new DelegateCommand(OnHamburger);
}
public DelegateCommand HamburgerCommand { get; }
private void OnHamburger()
{
navigationDrawer.ToggleDrawer();
}
试试the docs...
我尝试通过行为命令打开抽屉菜单(Syncfusion 控件)
Xaml
<Button x:Name="hamburgerButton"
HeightRequest="50" WidthRequest="50"
HorizontalOptions="Start" FontSize="20"
BackgroundColor="#1aa1d6" >
<Button.Behaviors>
<b:EventToCommandBehavior EventName="Clicked"
Command="{Binding HamburgerButton}" />
</Button.Behaviors>
虚拟机 cs
public DelegateCommand HamburgerButton { get; private set; }
public QuickPartViewModel(INavigationService navigationService)
{
HamburgerButton = new DelegateCommand(HamburgerButton_Clicked);
}
public void HamburgerButton_Clicked(object sender, EventArgs e)
{
navigationDrawer.ToggleDrawer();
}
如果 HamburgerButton_Clicked(object sender, EventArgs e) with arguments 那么我有错误 -// Argumment: cannot convert from 'method group' to Action
如果我删除 Argumments 它不起作用
你想多了。只需将命令绑定到按钮即可。
在页面中:
<Button Command="{Binding HamburgerCommand}" />
在视图模型中:
public QuickPartViewModel()
{
HamburgerCommand = new DelegateCommand(OnHamburger);
}
public DelegateCommand HamburgerCommand { get; }
private void OnHamburger()
{
navigationDrawer.ToggleDrawer();
}
试试the docs...