文本块中显示的 XAML 变量

本文关键字:XAML 变量 显示 文本 | 更新日期: 2023-09-27 18:30:38

我是XAML的新手。 我以前使用过 C#、C++ 和 ASP.net,但如果有帮助的话。 这就是我想做的;动态显示一个字符串变量(我们称之为"债务"),该变量在 C# 代码隐藏中声明。 有没有一种简单的方法可以使用 TextBlock 调用来执行此操作?

文本块中显示的 XAML 变量

在后面的代码中:

TextBox.Text = debt;

您应该在 WPF 中使用绑定,当然您可以在后面的代码中执行此操作,但是如果您的可变债务因任何原因而更改怎么办。

代码隐藏

声明一个依赖项属性,如下面的代码,它将自动实现 NotifyPropertyChanged,如果您的变量值在运行时更改,它将更新您的 UI。

 public partial class MainWindow : Window
    {
        public string Debt
        {
            get { return (string)GetValue(DebtProperty); }
            set { SetValue(DebtProperty, value); }
        }

        public static readonly DependencyProperty DebtProperty =
            DependencyProperty.Register("Debt", typeof(string), typeof(MainWindow), new PropertyMetadata(string.Empty));
        public MainWindow()
        {
            InitializeComponent();
            this.DataContext = this;
            this.Debt = "Test";
        }
    }

XAML

然后在您的 Xaml 中,只需声明您的文本块(如果您想修改可变债务,则声明文本框)并将其 Text 属性绑定到您的变量 Debt。

 <TextBlock Text="{Binding Path=Debt, UpdateSourceTrigger=PropertyChanged}" />

似乎很多代码仅用于设置文本属性,但用户 WPF 绑定总是更好。

更好的是,您可以使用 MVVM 模式。