gpt4 book ai didi

WPF 与 StringFormat 的绑定(bind)不适用于工具提示

转载 作者:行者123 更新时间:2023-12-03 05:09:31 27 4
gpt4 key购买 nike

以下代码有一个简单的绑定(bind),它使用完全相同的绑定(bind)表示法将名为 MyTextBlock 的 TextBlock 的文本绑定(bind)到 TextBox 的 Text 和 ToolTip 属性:

<StackPanel>
<TextBlock x:Name="MyTextBlock">Foo Bar</TextBlock>
<TextBox Text="{Binding ElementName=MyTextBlock, Path=Text, StringFormat='It is: \{0\}'}"
ToolTip="{Binding ElementName=MyTextBlock, Path=Text, StringFormat='It is: \{0\}'}" />
</StackPanel>

绑定(bind)还使用 StringFormat property introduced with .NET 3.5 SP1对于上面的 Text 属性来说工作正常,但是对于 ToolTip 来说似乎被破坏了。预期结果是“It is: Foo Bar”,但是当您将鼠标悬停在文本框上时,工具提示仅显示绑定(bind)值,而不显示字符串格式的值。有什么想法吗?

最佳答案

WPF 中的工具提示可以包含任何内容,而不仅仅是文本,因此当您只需要文本时,它们提供了 ContentStringFormat 属性。据我所知,您需要使用扩展语法:

<TextBox ...>
<TextBox.ToolTip>
<ToolTip
Content="{Binding ElementName=myTextBlock,Path=Text}"
ContentStringFormat="{}It is: {0}"
/>
</TextBox.ToolTip>
</TextBox>

我不能 100% 确定使用来自此类嵌套属性的 ElementName 语法进行绑定(bind)的有效性,但 ContentStringFormat 属性正是您所寻找的。

关于WPF 与 StringFormat 的绑定(bind)不适用于工具提示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/197095/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com