gpt4 book ai didi

wpf - 为什么我不能在菜单中为超过 1 个项目使用相同的图标?

转载 作者:行者123 更新时间:2023-12-01 07:30:55 27 4
gpt4 key购买 nike

我有一个 MenuItem像下面

<MenuItem Header="Edit">
<MenuItem Header="Copy Direct Link" Icon="{StaticResource CopyIcon}" Command="{Binding CopyImageCommand}" />
<MenuItem Header="Copy Image Data" Icon="{StaticResource CopyIcon}" Command="{Binding CopyImageDataCommand}" />
<MenuItem Header="Paste" Icon="{StaticResource PasteIcon}" Command="{Binding PasteImageCommand}" />
</MenuItem>

注意第一个 2 个项目使用相同的图标,我得到如下所示的内容



我尝试删除第二个项目,
<MenuItem Header="Edit">
<MenuItem Header="Copy Direct Link" InputGestureText="Ctrl+C" Icon="{StaticResource CopyIcon}" Command="{Binding CopyImageCommand}" />
<!--<MenuItem Header="Copy Image Data" InputGestureText="Ctrl+Alt+C" Icon="{StaticResource CopyIcon}" Command="{Binding CopyImageDataCommand}" />-->
<MenuItem Header="Paste" InputGestureText="Ctrl+P" Icon="{StaticResource PasteIcon}" Command="{Binding PasteImageCommand}" />
</MenuItem>

然后我得到了类似的东西



如何重用图标?

最佳答案

this

Image 只能有一个父项,因此它将从第一个 MenuItem 移动到第二个。您可以像这样添加 x:Shared 属性

<Window.Resources>
<Image x:Key="CopyIcon" x:Shared="False" Source="..." />
</Window.Resources>

来自 msdn

x:Shared Attribute
When set to false, modifies WPF resource-retrieval behavior so that requests for the attributed resource create a new instance for each request instead of sharing the same instance for all requests.

关于wpf - 为什么我不能在菜单中为超过 1 个项目使用相同的图标?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4303392/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com