UWP Prism UWP Viewmodel - PullRequest
       6

UWP Prism UWP Viewmodel

0 голосов
/ 17 января 2019

Я использовал локатор Viewmodel Prism для создания экземпляров моих моделей представления с использованием соглашений об именах призмы. Я потерял самообладание, потому что создал пользовательский элемент управления с его собственной моделью представления, которую я связываю с другими моделями представления с помощью Prism Event Aggregator, это прекрасно работаетно я хочу создать другие экземпляры этого пользовательского элемента управления.Используя агрегатор событий, все экземпляры пользовательского элемента управления, очевидно, подписываются на публикуемые события так:

  1. Как мне дифференцировать фактический пользовательский элемент управления, на который я хочу ориентироваться.
  2. Как сделатьсоздать экземпляр модели представления и нацелить текстовый вид представления без использования локатора модели представления?

1 Ответ

0 голосов
/ 17 января 2019

Я создал свойство зависимости в пользовательском элементе управления с именем 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 для того, для чего должен использоваться пользовательский элемент управления. В XAMl родительского представления просто установите vmType, что вам нужно.

...