如何摆脱在 XAML 中的 WPF 绑定中使用 ElementName

发布于 2025-01-07 02:06:06 字数 343 浏览 1 评论 0原文

我正在构建一个 WPF 应用程序,并且我的窗口代码隐藏中有一些 DependencyProperties(实际上是一大堆)。我想将文本框绑定到这些字符串值之一。如果我使用 {Binding ObjectName} 它就不起作用,并且它会抱怨在输出中找不到该属性。如果我使用 {Binding ObjectName, ElementName=window} (其中 window 是我的窗口实例名称),它就可以工作。但我有很多绑定,我不想每次都使用 ElementName 属性。是否有任何快捷方式可以将所有元素名称默认为窗口对象,因为我的所有绑定都具有相同的元素?

谢谢, 能。

I am building a WPF application and I have some DependencyProperties in my window's codebehind (actually a big bunch of them). I want to bind a textbox to one of these string values. If I use {Binding ObjectName} it just doesn't work and it complains about not finding the property in the output. If I use {Binding ObjectName, ElementName=window} (where window is my Window's instance name), it works. But I have lots of bindings and I don't want to use the ElementName property each time. Is there any shortcut that will default all the element names to the window objects, as all of my bindings have the same element?

Thanks,
Can.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

对不⑦ 2025-01-14 02:06:06

绑定的默认源是 FrameworkElement.DataContext,因此您必须将窗口的 DataContext 属性设置为窗口实例,例如 DataContext = this;< /代码>

The default source of a binding is FrameworkElement.DataContext so you have to set the DataContext property of your window to the instance of your window e.g. DataContext = this;

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文