我知道我的主题标题选择不是很好,但我不知道如何描述我的问题。 好的回到2主题:
我的应用程序有三个菜单。其中两个相互依赖。
在此示例中,我有三个类别:Cars
,Trees
和Students
在主菜单中有三个按钮,每个按钮处理三个类别中的一个。
在子菜单中还有三个其他控件:Add
,Remove
和Print
。
现在,如果我点击Cars
,我希望应用程序激活子菜单中的所有三个按钮,以便用户能够管理他/她的汽车。
因此,将有一个包含所有现有数据的表格,但目前无关紧要。
我现在的问题是如何知道用户按下了哪个类别按钮?只有一个子菜单,如果用户点击Add
- 按钮,应用程序必须知道应该添加新条目的类别。
知道如何解决这个问题吗?
答案 0 :(得分:0)
您是否尝试使用3种不同的命令,但想知道从哪个类别中选择它。
如果是这样,那么您可以使用CommandParameter来指示类别 - 命令参数数据在被调用时将被传递到CanExecute()
/ Execute()
。
(忽略下面重复的ApplicationCommands.Cut ...我只是在KAXAML中进行测试......只需用你定义的Add,Remove或Print命令替换它。
<Page
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<Menu>
<MenuItem Header="Cars">
<MenuItem Header="Add" Command="ApplicationCommands.Cut" CommandParameter="Cars"/>
<MenuItem Header="Remove" Command="ApplicationCommands.Cut" CommandParameter="Cars"/>
<MenuItem Header="Print" Command="ApplicationCommands.Cut" CommandParameter="Cars"/>
</MenuItem>
<MenuItem Header="Trees">
<MenuItem Header="Add" Command="ApplicationCommands.Cut" CommandParameter="Trees"/>
<MenuItem Header="Remove" Command="ApplicationCommands.Cut" CommandParameter="Trees"/>
<MenuItem Header="Print" Command="ApplicationCommands.Cut" CommandParameter="Trees"/>
</MenuItem>
<MenuItem Header="Students">
<MenuItem Header="Add" Command="ApplicationCommands.Cut" CommandParameter="Students"/>
<MenuItem Header="Remove" Command="ApplicationCommands.Cut" CommandParameter="Students"/>
<MenuItem Header="Print" Command="ApplicationCommands.Cut" CommandParameter="Students"/>
</MenuItem>
</Menu>
</Page>