可以将资源文件中的一些值直接添加到XAML标记中吗?或者为了本地化,我们必须在*.cs文件中创建类似这样的内容:
txtMessage.Text = Messages.WarningUserMessage;
其中Messages
是资源,txtMessage
是TextBlock。
发布于 2010-05-27 16:01:44
确保在resx编辑器中将Code Generation设置为Public,然后您可以简单地使用:
<TextBlock Text="{x:Static Messages.WarningUserMessage}" />
发布于 2011-09-16 10:45:31
这样做要容易得多。在XAML文件中添加一个xmlns,直接使用资源。
xmlns:resx="clr-namespace:wpfapplicationname.Properties"
Title="{x:Static resx:Resources.name}"
发布于 2010-05-27 16:09:00
最简单的方法可能是直接引用项(它们是静态属性,默认情况下是内部属性):
<TextBlock x:Name="txtMessage" Text="{x:Static MyApp.Properties.Resource.TextString}"/>
如果你正在开发一个本地化的WPF应用程序,那么我建议你看看http://wpflocalization.codeplex.com/上关于CodePlex的指南,如果你正在构建一个复合应用程序(使用PRISM或MEF),那么我有一个blog post on a nice way to accomplish WPF localisation using standard bindings。
https://stackoverflow.com/questions/2919367
复制相似问题