6

我正在创建一个带有绑定到项目名称的列表框的 WPF 应用程序。作为装饰元素,我想在列表中的每个项目旁边放置一个小图标,类似于 Outlook 在其个人文件夹列表中所做的方式。对于初学者,我将为列表中的所有项目使用相同的图像。

这是到目前为止我得到的标记(我会在它工作后将它移到资源字典中):

<ListBox.Resources>
    <ImageBrush x:Key="ProjectIcon" ImageSource="Images/project.png" />
</ListBox.Resources>
<ListBox.ItemTemplate>
    <DataTemplate>
        <StackPanel Orientation="Horizontal">
            <Image Source="{StaticResource ProjectIcon}"/>
            <TextBlock Text="{Binding Path=Name}" />
        </StackPanel>
    </DataTemplate>
</ListBox.ItemTemplate>

我在图像资源中有错误,但我不知道如何修复它。有什么建议么?谢谢。

4

1 回答 1

13

an的Source属性是notImage类型。以下应该有效:ImageSourceImageBrush

<ListBox.Resources>
    <BitmapImage x:Key="ProjectIcon" UriSource="Images/project.png" />
</ListBox.Resources>
<ListBox.ItemTemplate>
    <DataTemplate>
        <StackPanel Orientation="Horizontal">
            <Image Source="{StaticResource ProjectIcon}"/>
            <TextBlock Text="{Binding Path=Name}" />
        </StackPanel>
    </DataTemplate>
</ListBox.ItemTemplate>
于 2010-01-17T18:31:08.230 回答