我有一个工具提示,其值设置为:
Value="{Binding Path=DataItem.EquitySold, StringFormat=Reserved (Equity Share: \{0\}%)}"
Run Code Online (Sandbox Code Playgroud)
工具包显示为:
72
但我希望它是:
保留(股权比例:72%)
我的绑定有什么问题?
Mit*_*tch 53
toolTip是一个内容控件,这意味着它实际上没有显示模型.这在@deccyclone的早期答案中得到了证明,该答案将内容设置为TextBlock.由于TextBox旨在显示文本,因此StringFormat绑定属性的工作方式与广告一样.按钮是另一个例子.(两者都来自ContentControl)
如果将ToolTip的内容设置为字符串,则显示该字符串,因为如果dataType是字符串,则ToolTip具有内置转换器.如果要利用内置的字符串转换器,则需要使用ContentStringFormat属性设置格式.
<ToolTip
Content="{Binding Path=Value}"
ContentStringFormat="{}{0:F2} M"
/>
Run Code Online (Sandbox Code Playgroud)
顺便说一句,关于何时使用StringFormat或ContentStringFormat的提示是控件提供用于设置显示文本的属性.Text属性 - >使用StringFormat Content属性 - >使用ContentStringFormat
dec*_*one 16
你有没有尝试过:
<ToolTip>
<TextBlock Text="{Binding Path=DataItem.EquitySold, StringFormat=Reserved (Equity Share: \{0\}%)}" />
</ToolTip>
Run Code Online (Sandbox Code Playgroud)