上下文敏感的资源字符串作为工具提示

时间:2012-08-05 03:42:53

标签: wpf xaml resourcedictionary

我怀疑在过去几周开/关搜索过程中我无法找到问题的答案的原因是我可能没有在搜索中使用正确的条款。关于在搜索或直接答案中使用的术语的任何指示将不胜感激。

情况如下。我编写了一个WPF/C#应用程序来管理SQL Server数据库中的数据。我已经模仿了按钮的工具提示,因此它们显示了我希望它们显示的信息。这是一个例子:

<Button.ToolTip>
  <ToolTip Template="{StaticResource ToolTipTemplate}"
           c:ToolTip.HeaderText="{x:Static p:Resources.AddRecordToolTip}"
           c:ToolTip.DescriptionText="{x:Static p:Resources.AddRecordDescription}" />
</Button.ToolTip>

每个工具提示中都有两位信息 1. "HeaderText"这是对按钮功能的简要描述。 I.E.添加新供应商。
2. "DescriptionText",其中包含有关此按钮操作的更详细信息。

我想做的是:
“AddRecordToolTip”资源应该类似于"Add New {0}",以便相同的资源可以用于每个窗口上“添加”按钮的“HeaderText”。

"{0}"应替换为"Vendor""Vendor Window", "Customer"中的"Customer Window"

不知怎的,我只是找不到如何做到这一点的例子。我确定有一些简单的事情我会遗漏,或者有些术语我不是googleing会给我想要的东西。

1 个答案:

答案 0 :(得分:0)

假设您的视图模型具有属性描述,它将是供应商窗口的“供应商”等...

<Button.ToolTip> 
  <ToolTip Template="{StaticResource ToolTipTemplate}" 
           c:ToolTip.HeaderText="{Binding Description, StringFormat={x:Static p:Resources.AddRecordToolTip}}" 
           c:ToolTip.DescriptionText="{x:Static p:Resources.AddRecordDescription}" /> 
</Button.ToolTip>