当绑定返回 null 时隐藏多重绑定字符串格式
我正在寻找将时间跨度属性绑定到文本块,这似乎可以通过以下方式解决 这篇帖子的帮助
现在我想在数据为空时隐藏 StringFormat。如果我使用带有 a 的多绑定,则从线程中stringformat,如果我的数据为空,那么 stringformat 仅显示一个“:”
<TextBlock>
<TextBlock.Text>
<MultiBinding StringFormat="{}{0}:{1}">
<Binding Path="MyTime.Hours" TargetNullValue={x:Null}/>
<Binding Path="MyTime.Minutes" TargetNullValue={x:Null}/>
</MultiBinding>
</TextBlock.Text>
</TextBlock>
如果数据为空,我如何隐藏“:”
I was looking to bind a timespan property to a textblock,which seems to be resolved with
the help of this post
Now i want to hide StringFormat when data is null.From the thread if i use a mutibinding with a stringformat and if my data is null then the stringformat displays just a ":"
<TextBlock>
<TextBlock.Text>
<MultiBinding StringFormat="{}{0}:{1}">
<Binding Path="MyTime.Hours" TargetNullValue={x:Null}/>
<Binding Path="MyTime.Minutes" TargetNullValue={x:Null}/>
</MultiBinding>
</TextBlock.Text>
</TextBlock>
How could i hide the ":" if data is null
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我基本上在这里回答了与 Nicolas Repiquet 相同的问题,但无论如何..
感觉这里的框架缺少了一部分。 (据我所知)没有办法让 MultiBinding 在没有转换器的情况下使用 FallbackValue。使用这种方法可能会让您回到第 1 方,因为您的上一个问题是关于比使用转换器更好的方法:)
并且转换器基本上做您“应该”能够使用属性的事情
I'm basically answering the same thing as Nicolas Repiquet here but anyway..
It feels like there is a part missing in the framework here. There is no way (as far as I know) to make a MultiBinding use a FallbackValue without a Converter. Using this approach will probably set you back to square 1 since your last question was about a better approach then using a Converter :)
And the Converter basically does what you "should" be able to use a Property for
此处查看多重绑定后备值。
Take a look at multibinding fallback value here.