我有以下WPF应用程序
<Window x:Class="Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:WpfApplication1"
Title="Window1" Height="300" Width="300">
<Grid>
<TabControl>
<TabItem Header="Test1">
<local:ImageView />
</TabItem>
<TabItem Header="Test2">
<local:ImageView />
</TabItem>
<TabItem Header="Test3">
<local:ImageView />
</TabItem>
</TabControl>
</Grid>
</Window>
ImageView是一个定义为
的UserControl<UserControl x:Class="ImageView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" >
<Grid>
<Image Source="pack://application:,,,/Resources/icon.png" Width="15" Height="15" />
</Grid>
</UserControl>
当我在TabItems之间切换时,有时会显示图像,有时则不显示。为什么会这样?
答案 0 :(得分:0)
为了记录,我能够通过将我的ImageView更改为
来解决这个问题<UserControl x:Class="ImageView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" >
<Grid>
<Grid.Resources>
<BitmapImage x:Key="IconImageSource" UriSource="pack://application:,,,/Resources/icon.png" />
</Grid.Resources>
<Image Source="{StaticResource IconImageSource}" Width="15" Height="15" />
</Grid>
但我仍然很好奇为什么第一种方法不起作用