【问题标题】:WPF MVVM Change button content with loading user controlWPF MVVM 通过加载用户控件更改按钮内容
【发布时间】:2015-10-05 11:11:02
【问题描述】:

我有一个底部有两个按钮的简单窗口,当单击一个按钮时,它会更改主窗口的视图模型、内容按钮的名称和命令。

我希望当用户单击按钮时,使用我已经拥有的加载用户控件来更改它,但我已经堆叠了,我不知道这是我可以用 xaml 实现的东西,或者我需要在我的视图模型上添加一些代码.

任何建议将不胜感激。 谢谢。

【问题讨论】:

  • 两者:ViewModel 和 View 都必须interact。例如。来自按钮 (View) 的命令将触发绑定到控件 (View) 的属性更改 (ViewModel)。您可能希望将内容放入另一个 View+ViewModel(UserControl 及其 ViewModel)并使用 ContentControl + 数据模板和通常的绑定来显示它。最合适的解决方案需要更多细节:您想要显示的内容到底是什么,等等。
  • 使用 BusyIndi​​cator 怎么样?
  • 好的,如果我理解正确的话,我可以创建两个 ViewModel“Button”和“LoadingButton”,然后当用户点击它时在这两个之间切换。现在的问题是我有两个具有不同内容和命令的按钮,我如何动态分配它们?现在在我看来,我的视图模型上有两个具有相对绑定的按钮。

标签: c# wpf xaml mvvm


【解决方案1】:

您需要在 ViewModel 上添加一些代码来将 Button 替换为 Loading 控件。您可以通过绑定 ContentControls 或使用布尔属性来执行此操作,以便在加载时将一个设置为可见,另一个设置为隐藏。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-11-24
    • 2019-10-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-17
    • 1970-01-01
    • 2014-04-25
    相关资源
    最近更新 更多