繁体   English   中英

到底是什么 <Expander Header=“{Binding}”> 做?

[英]What does exactly <Expander Header=“{Binding}”> do?

在创建简单的自定义扩展器时,我遇到了IT内的项目无法绑定的问题。 我在此链接上找到了解决方法:

http://codeoverload.wordpress.com/2012/03/04/wpf-expander-headertemplates-dont-forget-the-binding/

碰巧可以解决这个完全相同的问题,但是据我了解,这是“靠运气发现的,不是很确定它为什么起作用; D”

我现在的问题是:为什么添加Header = {Binding}可以解决此问题。 实际上,从事实绑定实际上是行不通的,这似乎是由于DataContext引起的,但我不知道如何解决该问题。

感谢您的解释; 希望这不是重复的>。<

来自文档

获取或设置用于每个控件的标头的数据。

该对象是对DataContext或纯文本或其他内容的绑定。

我敢打赌,该实现看起来是看该值是否为文本,如果是,则将其扔到默认的标头模板中,该模板可能很简单

<TextBlock Text="{Binding}" />

如果声明标头的模板,则DataContext将是您分配给Header属性的任何内容。 显然,扩展器的DataContext不会自动流到标头模板。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM