2011-05-20 63 views
2

我正在研究Silverlight 4应用程序。我在应用程序名称的资源字符串中嵌入了一个“TM”符号,以便无论出现在文本中何处都显示“TM”。那么,我的客户说他喜欢它,并想保留它,但说“TM”太大了。我想知道如果我能解决这个问题而不会打破我的资源系统。我没有使用微软的Resx,因为即使在开箱即用的情况下(即使用Silverlight业务应用程序模板 - 我首先把它拿出来),它总会对我造成随机异常和令人困惑的编译器错误。我使用我自己的私有字符串资源解决方案,它非常简单,并使用附加的依赖属性从XML存储注入字符串。如何让我的“TM”更小?

事情是这样的:

<TextBox res:Strings.Assignment="Text=HomeView.Title" /> 

这里是XML存储的相关部分:

<Group Name="Default"> 
    <Resource Name="ApplicationName"><![CDATA[MyApp™]]></Resource> 
</Group> 
<Group Name="HomeView"> 
    <Resource Name="Title"><![CDATA[Welcome to [~ApplicationName]]]></Resource> 
</Group> 

正如你可以看到一个资源可以引用另一个。 “TM”直接嵌入到Default.ApplicationName资源中。

回答

2

相信特殊符号的外观由字体本身定义的,因此短编辑字体,你就得做出那样RobSiklos一个单独的章节中提到

0

怎么是这样的:

<TextBox> 
    <Run res:Strings.Assignment="Text=HomeView.Title" /><Run FontSize="8" Text="(tm)"/> 
</TextBox> 
+0

我知道它的可能性不大,但我寻找更多的上标字符或什么的规则微调。我想这不是一个好方法。 – Jordan 2011-05-25 13:26:30

0

另一个建议:

<RichTextBox res:Strings.Assignment="Xaml=HomeView.Title" /> 

所以你设置一个RichTextBox的XAML属性。这样,你应该能够把你想要的所有格式化,我猜想。虽然没有尝试过。