簡體   English   中英

UWP Prism UWP視圖模型

[英]UWP Prism UWP Viewmodel

我一直在使用Prism的Viewmodel定位器通過棱鏡命名約定實例化我的視圖模型。由於使用了自己的ViewModel創建了一個用戶控件,並使用Prism Event Aggregator與其他視圖模型進行了通信,因此我一直不滿意,但是效果很好,但是我想要創建此用戶控件的其他實例。 使用事件聚合器,用戶控件的所有實例顯然都在訂閱已發布的事件,因此:

  1. 如何區分要定位的實際用戶控件。
  2. 如何在不使用ViewModel定位器的情況下實例化ViewModel並以View數據上下文為目標?

我要做的是在用戶控件中創建一個名為vmType的依賴項屬性。

    public string vmType
    {
        get { return (string)GetValue(vmTypeProperty); }
        set { SetValue(vmTypeProperty, value); viewModel.vmType = vmType; }
    }

    // Using a DependencyProperty as the backing store for vmType.  This enables animation, styling, binding, etc...
    public static readonly DependencyProperty vmTypeProperty =
        DependencyProperty.Register("vmType", typeof(string), typeof(UserControl), new PropertyMetadata(null));

在集合中,我將關聯的viewmodel屬性vmType標記為應該用於用戶控件的內容。 在父視圖的XAM1中,只需將vmType設置為所需的值即可。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM