将图像添加到 windows 工作流自定义 activity 设计器

Add an image to a windows workflow custom activity designer

我正在 Windows 工作流中开发一些自定义活动,使用设计器为用户添加一些漂亮的自定义外观。尽管我在实际工作流视图中加载图像时遇到问题,但我大部分时间都能够像在 WPF 中那样做所有事情。这是它在设计器中的样子

<sap:ActivityDesigner.Resources>
    <DataTemplate x:Key="Collapsed">
        <Grid>
            <Grid.ColumnDefinitions>
                <ColumnDefinition MaxWidth="40"/>
                <ColumnDefinition/>
            </Grid.ColumnDefinitions>
            <Image MaxWidth="40" MaxHeight="20" Grid.Column="0" HorizontalAlignment="Left" Source="pack://application:,,,/Images/Web.ico"></Image>
            <Label VerticalContentAlignment="Center" HorizontalContentAlignment="Center" Grid.Column="1">Collapsed View</Label>
        </Grid>
    </DataTemplate>
    <DataTemplate x:Key="Expanded">
     <Grid>
    <Label>hi</Label>
    </Grid>

    </DataTemplate>

    <Style x:Key="ExpandOrCollapsedStyle" TargetType="{x:Type ContentPresenter}">
        <Setter Property="ContentTemplate" Value="{DynamicResource Collapsed}"/>
        <Style.Triggers>
            <DataTrigger Binding="{Binding Path=ShowExpanded}" Value="true">
                <Setter Property="ContentTemplate" Value="{DynamicResource Expanded}"/>
            </DataTrigger>
        </Style.Triggers>
    </Style>
</sap:ActivityDesigner.Resources>
 <Grid>
    <ContentPresenter Style="{DynamicResource ExpandOrCollapsedStyle}" Content="{Binding}" />
</Grid>
</sap:ActivityDesigner>

但是在Visual Studio 2015 年创建工作流时,它看起来像这样:

我发现图像需要包含命名空间。图片标签应类似于:

<Image MaxWidth="40" MaxHeight="20" Grid.Column="0" HorizontalAlignment="Left" 
       Source="pack://application:,,,/MyNamespace;component/Lookup.png"></Image>

Lookup.png 的构建操作应该是 "Resource"。