Value="{Binding}" 是什么意思?做?
可能的重复:
WPF 绑定语法问题
我一直在到处使用这种语法,我想我知道它做了什么,但现在我不知道了。
Value="{Binding}"
我在网上搜索这个语法时遇到了很大的麻烦,因为当然大括号被忽略了。
例如:
<Style x:Key="GridCell" TargetType="{x:Type TextBlock}">
<Setter Property="ToolTip" Value="{Binding}}"/>
</Style>
当作为样式应用于文本块时,将工具提示绑定到文本块内容(文本)所绑定到的未格式化(未转换)属性。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
其数据绑定值到窗口或控件的 DataContext 的根。
Its data binding value to the root of the window or control's
DataContext
.它绑定到当前的数据上下文。
我建议您查看 WPF 数据绑定备忘单。应该是一个方便的参考。
It binds to the current Datacontext.
I suggest you take a look at the WPF Databinding Cheat Sheet. Should be a handy reference.
语法
{Binding}
创建一个新的绑定
使用绑定标记扩展。具体来说,
{Binding}
创建具有空路径的Binding
对象。由于路径是相对于当前 DataContext 的,这意味着绑定到它。The syntax
{Binding <something>}
creates a newBinding
using the Binding markup extension.Specifically,
{Binding}
creates theBinding
object with empty path. And since the paths are relative to the currentDataContext
, this means binding to it.文档将
{Binding}
引用为“空绑定语法”。它将属性绑定到 DataContext 引用的整个对象。可能值得注意的是,控件继承其父元素的 DataContext(除非您直接设置它)。
The documentation refers to
{Binding}
as the "empty binding syntax". It binds the property to the entire object referenced by the DataContext.It may be worth noting that a control inherits the DataContext of its parent element (unless you set it directly).
这就是 WPF 将数据链接到控件的方式。有关更多详细信息,请参阅 MSDN。 http://msdn.microsoft.com/en-us/library/ms752347.aspx
It is how WPF links your data to the control. See MSDN for more detail. http://msdn.microsoft.com/en-us/library/ms752347.aspx
这完全取决于您在元素树中的哪个位置使用它。默认情况下,它表示当前的 DataContext。但如果您已经在 ListBox 中,那么这意味着 ListBox 的 DataContext。这与 Root/Main DataContext 不同。
It all depends where in the your Element Tree you are using this. By default it means current
DataContext
. But if you are already inside your ListBox, then it means ListBox's DataContext. Which is different from Root/Main DataContext.