【发布时间】:2014-02-06 17:53:07
【问题描述】:
假设我在同一个 XAML 文件中有两个文本框。我希望文本框 2 中的输入来自我在文本框 1 中输入的任何内容。
这很简单(我想,如果我错了,请纠正我):
Textbox x:name="TextBox1" Text="Your Text Here"
Textbox x:name="TextBox2" Text="{Binding ElementName=TextBox1, Path=Text}"
当我将 TextBox2 放入另一个 XAML 文件时,我的理解不足。 TextBox2 不再知道 TextBox1。假设 TextBox1 位于名为“File1.xaml”的文件中,而 TextBox2 位于名为“File2.xaml”的文件中。我可以提供哪些其他信息(以及在何处)来保持这个相同的简单元素链接有效?
【问题讨论】:
-
考虑学习 MVVM 和声明性数据绑定以在 WPF 中查看模型对象。您的文本框不应直接相互访问 - 相反,它们可以数据绑定到同一个变量(并且更改将在框架级别自动反映)。
-
谢谢!我理解将它们绑定到变量的想法,但我找不到在最基本层面上发生这种情况的简单示例。我希望只有两个文本框,这可能很简单,可以唤起一个向我解释这个概念的答案。
-
Dean 的回答似乎是对的。您可能想查看介绍 wpf 的 Channel9 视频。相信我,您真的很想稍后将您的演示文稿与您的业务逻辑层分开,并在视图模型中拥有一个单独的变量。这是您了解 WPF 的基础,即使您需要多花几个小时来了解您将在哪里学习而不是构建它,从长远来看,您的生活也会变得更好。