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

ViewModel之间共享状态

  •  3
  • GraemeF  · 技术社区  · 17 年前

    ListBox TabControl

    IsSelected this

    似乎我需要在Model和ViewModel之间有一些东西来保持这个额外的状态。有什么模式或例子可以很好地做到这一点吗?

    2 回复  |  直到 17 年前
        1
  •  10
  •   Graeme Bradbury    17 年前

    使用ViewModel。

    这样,您的列表框会驱动选项卡控件显示的内容,而不会将此信息输入模型,模型应该不会注意到视图的存在。

        2
  •  1
  •   Oleg Mihailik    17 年前

    TabControl是Items Control,因此您不应该羞于将其Items源绑定到列表框。选定项目。

    显然,用于List的ViewModel应该有一个属性来为Tabs生成ViewModel:

    public TabViewModel ItemTabModel { get { ... } }
    

    而且,由于TabControl有点滑稽,您需要添加IStntainerStyle来填充TabControlItem的内容,因为TableControl的普通ItemTemplate只影响选项卡的标题。