3

我正在尝试创建一个带有TreeView元素的资源管理器应用程序,并且树的每个级别都有不同的图标,并遵循此处的文章:http: //www.codeproject.com/Articles/21248/A-Simple-WPF-Explorer -树

一切都很好,除了我也想要不同大小的图标。

XAML的 Image 元素在这里:

<Image Name="img"
       Source="{Binding RelativeSource={RelativeSource Mode=FindAncestor,
       AncestorType={x:Type TreeViewItem}},
       Path=Header,
       Converter={x:Static local:HeaderToImageConverter.Instance}}"
/>

决定返回哪个图标的代码如下:

if ((value as string).Contains(@"\""))
{
    Uri uri = new Uri ("pack://application:,,,/Images/DeployWiz_Network.png");
    BitmapImage source = new BitmapImage(uri);

    return source;
}

我将如何更改返回的图像的尺寸?更改位图图像对象的尺寸似乎不起作用。我可以返回哪些其他图像对象作为源?

4

1 回答 1

16

好的,我想出了我的问题。天哪,真是个假人。下面是我更改的代码,它得到了我想要的结果:

Uri uri = new Uri("pack://application:,,,/Images/DeployWiz_Network.png");
BitmapImage source = new BitmapImage();
source.BeginInit();
source.UriSource = uri;
source.DecodePixelHeight = 10;
source.DecodePixelWidth = 10;
source.EndInit();

return source;
于 2013-06-12T18:40:19.947 回答