无法通过设置器设置 System.Windows.Controls.MenuItem.Icon

2024-01-06

嗨,我想有一个菜单项.图标 http://msdn.microsoft.com/en-us/library/system.windows.controls.menuitem.icon.aspx通过样式设置器设置:

<Style x:Key="MenuItem_Delete" TargetType="MenuItem"
        BasedOn="{StaticResource {x:Type MenuItem}}">
    <Setter Property="Header" Value="_Delete"/>
    <Setter Property="MenuItem.Icon">
        <Setter.Value>
            <Image Source="Resources/Delete.png"/>
        </Setter.Value>
    </Setter>
</Style>

我在运行时收到以下异常: 无法将“System.Windows.Controls.Image”类型的内容添加到“System.Object”类型的对象。标记文件“WpfApplication1;component/application.xaml”第 164 行第 26 行中的对象“System.Windows.Controls.Image”出错。

另一方面,这是上面链接中的示例:

<MenuItem Header="New">
  <MenuItem.Icon>
    <Image Source="data/cat.png"/>
  </MenuItem.Icon>
</MenuItem>

Thanks.


我遇到了同样的问题。 我在另一个线程上发现了同样的错误http://social.msdn.microsoft.com/Forums/en-US/wpf/thread/81a106dd-4d06-4506-820a-30fe96a39112 http://social.msdn.microsoft.com/Forums/en-US/wpf/thread/81a106dd-4d06-4506-820a-30fe96a39112。 根据他们的解决方案,你可以尝试这个。但绑定仅对 MenuItem 集合中的最后一个元素执行。太糟糕了!

<Style x:Key="MenuItem_Delete" TargetType="MenuItem"
    BasedOn="{StaticResource {x:Type MenuItem}}">
    <Style.Resources>
        <Image x:key="DeleteIcon" Source="Resources/Delete.png"/>
    </Style.Resources>
    <Setter Property="Header" Value="_Delete"/>
    <Setter Property="MenuItem.Icon" Value="{DynamicResource DeleteIcon}" />
</Style>

有更新吗?谢谢!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

无法通过设置器设置 System.Windows.Controls.MenuItem.Icon 的相关文章

随机推荐