【发布时间】:2013-09-30 13:23:17
【问题描述】:
我的应用程序中有一个奇怪的错误。每当显示 AboutDialog 时,主窗口上的公司徽标就会消失。
我发现这与同时使用同一资源的多个窗口有关。 在我的测试应用程序中,我正在启动两个这样的窗口:
void App_Startup(object sender, StartupEventArgs e)
{
MainWindow mainWindow = new MainWindow();
mainWindow.Top = 100;
mainWindow.Left = 900;
mainWindow.Show();
}
在我的主窗口上,我正在使用 ContentPresenter,其路径存储为应用程序资源。字符串不会发生这种情况。但是我的标志只显示在一个窗口上。
<StackPanel>
<ContentPresenter x:Name="Logo" Content="{DynamicResource BrandingLogo}" Margin="20" HorizontalAlignment="Center"/>
<TextBox Text="{DynamicResource MyConstString}"/>
</StackPanel>
有人知道如何解决这个问题吗?
编辑:
在我的实际应用程序中,我的徽标存储在 ResourceDictionary 中,因此无法将 x:Shared 设置为 false。
【问题讨论】:
标签: c# wpf resources resourcedictionary