XAML 如何从不同页面绑定TextBlock的Text属性

yjghlzjz  于 2022-12-07  发布在  其他
关注(0)|答案(1)|浏览(159)

我已经查过了,但没有找到解决我的似乎独特的情况。我试图找出我将能够绑定和设置一个文本块文本从不同的网页。

我希望能够在ShellPage.xaml.cs中执行的操作

SomeValue = "Some text...";

第二页. xaml

<TextBlock Text="{Binding SomeValue}" Style="{ThemeResource SubtitleTextBlockStyle}" />
ct3nt3jp

ct3nt3jp1#

确保将一个Name和一个FieldModifier属性(来自http://schemas.microsoft.com/winfx/2006/xaml命名空间,通常名为“x”)添加到要访问的元素中,如下所示:

<TextBlock
    x:Name="MyText"
    x:FieldModifier="public"
    Text="{Binding SomeValue}"
    Style="{ThemeResource SubtitleTextBlockStyle}"
/>

这将指示后台生成器在类中生成一个命名项,并使其在目标语言(这里是C#)中为public。以下是生成代码的摘录:

partial class MainWindow : global::Microsoft.UI.Xaml.Window
{
    ...
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.UI.Xaml.Markup.Compiler", " 1.0.0.0")]
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
    public void InitializeComponent()
    {
      ...
    }

    ...
    public global::Microsoft.UI.Xaml.Controls.TextBlock MyText;
    ...
   
}

现在,如果您有MainWindow的执行严修,就可以呼叫它的成员。

相关问题