代码之家  ›  专栏  ›  技术社区  ›  SkyLine

如何在wpf中从一个用户控件调用两个单独的命令?

  •  -1
  • SkyLine  · 技术社区  · 6 年前

    我有一个用户控件,它包含两个按钮“Add”和“Delete”,这两个按钮调用将数据添加到datagrid的命令。我使用这个用户控件两次。

    我还有两个数据网格用于“员工”和“部门”。

    This is UI.

    那么我如何将两个不同的命令附加到每个控制按钮上呢。?

    Those are buttons of User Control and attached Commands.

    (抱歉用英语。)

    1 回复  |  直到 6 年前
        1
  •  0
  •   Andy    6 年前

    当你看这幅画时,我认为这个问题相当清楚。 更多的解释将允许准确描述如何做到这一点,但这里是。

    DataContext继承自控件树。 图中有两个扩展器。 让我们调用这些用户控件内容中的任何内容。也许是,也许不是。这并不重要。让我们称之为部门和员工详细信息。 假设Delete按钮绑定DeleteCommand。 如果将部门的datacontext设置为公开DeleteCommand ICommand属性的viewmodel,则它将绑定到该viewmodel。 类似地,将Staff Details的datacontext设置为另一个viewmodel,该viewmodel公开deletecommand,然后Staff Details中的按钮将绑定到viewmodel中的deletecommand以获取Staff Details。

    您只需要两个不同的ViewModel,其中包含这些不同的命令,并将它们作为扩展器的datacontext。