将DataContext设置为当前类会导致无限循环

时间:2015-11-01 12:16:11

标签: xaml

我正在尝试将Page的DataContext属性设置为当前类(暂时不关心MVC概念)。

<Page.DataContext>
    <local:MyPage />
</Page.DataContext>

现在,我陷入了无限循环。我知道原因,这是因为我正在从MyPage类本身的对象初始化MyPage类的另一个对象,这会创建一个无限循环。

我可以通过移动视图中需要观察的代码部分来解决它,比如说,模型(然后将DataContext属性设置为该类)。但是,有没有办法在XAML中引用当前类(不创建另一个实例)?类似的东西:

<Page.DataContext>
    <local:this />
</Page.DataContext>

2 个答案:

答案 0 :(得分:1)

  • DataContext="{Binding RelativeSource={RelativeSource Self}}"在xaml

  • 代码

    中的
  • this.DataContext = this;

答案 1 :(得分:1)

<Page DataContext="{Binding RelativeSource={RelativeSource Self}}">

    ...

</Page>