在XAML中定义视图/演示者对的语法是什么?

时间:2009-08-07 11:32:28

标签: wpf xaml mvvm mvp

为什么当我用这种方式定义带有数据上下文的视图时:

<views:MessageView DataContext="{x:Type presenters:MessagePresenter}"/>

我的MessagePresenter没有运行它的构造函数?

在XAML中定义这样的view / presenter对的语法是什么?

2 个答案:

答案 0 :(得分:4)

{x:Type}返回MessagePresenter的类型,而不是MessagePresenter的实例。

以下创建MessagePresenter的实例:

<views:MessageView>
    <views:MessageView.DataContext>
        <presenters:MessagePresenter/>
    </views:MessageView.DataContext>
</views:MessageView>

答案 1 :(得分:0)

x:Type正在解析代表相关类型的Type实例(在本例中为MessagePresenter)。它不应该创建该类型的实例。