我有一个WPF窗口,其中一些属性被定义为动态资源,如下所示:
<Window x:Class="LocSample.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
MinHeight="350" MinWidth="525"
Title="{DynamicResource ResourceKey=ResId_Title}"
FlowDirection="{DynamicResource ResId_FlowDirection_Default}" >
<Grid>
<Label Content="{DynamicResource ResId_FirstName}" />
</Grid>
</Window>
在运行时加载ResourceDictionary
以反映用户的语言选择。并使用户能够即时切换语言。
这在运行时工作正常,但在设计时,资源定义的属性不会显示。我很清楚,设计师无法展示它们,因为它们没有在设计时定义。
我需要一种在设计时加载默认ResourceDictionary
的方法,以便设计师可以展示任何内容。
答案 0 :(得分:-1)
设置Window的Resources属性或任何其他元素,以便在xaml中运行时加载资源字典。这可以这样做:
<Window>
<Window.Resources>
<ResourceDictionary Source="YOUR_DEFAULT_RESOURCE_DICTIONARY.xaml" />
</Window.Resources>
<!-- Your window content -->
</Window>
显然,如果将其添加到除Window之外的其他元素中,则需要更改Window.Resources元素。