【问题标题】:How to pass an instance of an ancestor control in XAML?如何在 XAML 中传递祖先控件的实例?
【发布时间】:2013-07-12 00:06:07
【问题描述】:

我希望将 OuterDialog 用户控件中的属性传递到 InnerDialog,如下所示:

<uc:OuterDialog x:Name="test" Grid.ColumnSpan="2" Grid.RowSpan="2" Height="768" Width="1366" IsOpen="False">
    <uc:StandardDialog Height="768" Width="1366" Grid.ColumnSpan="2">
        <uc:InnerDialog AncestorDelegate="AnotherDialog.Close">

        </uc:InnerDialog >
    </uc:StandardDialog>
</uc:OuterDialog >

我可以在不借助代码的情况下做到这一点吗?

如何获取对“最近”祖先对象的引用并将其传递?

【问题讨论】:

    标签: xaml windows-runtime


    【解决方案1】:

    实现它的最佳方法实际上是让一个共享的 DataContext 指向一个视图模型,该视图模型具有两个控件都与之同步的属性。除此之外,您可以使用 {Binding Close, ElementName="AnotherDialog"} 绑定到名为 AnotherDialog 的元素上的 Close 属性,假设它们都在同一个名称范围内..

    【讨论】:

      猜你喜欢
      • 2021-01-23
      • 2010-10-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-11-14
      • 1970-01-01
      • 2011-06-26
      相关资源
      最近更新 更多