我试图删除默认按钮样式在visual studio扩展和替换它与图像。确切地说,我试图使我的按钮看起来像图像,而不是像通常做的所有其他扩展按钮等。
在预览中,我可以看到正确的图像和所有的风格被删除。但当我开始调试图像就消失了。
有什么办法可以补救吗?
<UserControl x:Class="TabsGroupper.TabsGroupperToolControl"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:imaging="clr-namespace:Microsoft.VisualStudio.Imaging;assembly=Microsoft.VisualStudio.Imaging"
xmlns:theming="clr-namespace:Microsoft.VisualStudio.PlatformUI;assembly=Microsoft.VisualStudio.Imaging"
xmlns:util="clr-namespace:Microsoft.VisualStudio.PlatformUI;assembly=Microsoft.VisualStudio.Utilities"
xmlns:catalog="clr-namespace:Microsoft.VisualStudio.Imaging;assembly=Microsoft.VisualStudio.ImageCatalog"
xmlns:toolkit="clr-namespace:Community.VisualStudio.Toolkit;assembly=Community.VisualStudio.Toolkit"
mc:Ignorable="d"
d:DesignHeight="300"
d:DesignWidth="300"
Name="TabGroupperWindow"
FontFamily="Segoe UI">
<Grid Background="#e8ecf4">
<Grid.Resources>
<Style x:Key="IconButtonStyle" TargetType="Button">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<Border Background="{TemplateBinding Background}"
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"
Padding="{TemplateBinding Padding}">
<Image Source="pack://application:,,,/TabsGroupper;component/Resources/Delete.png" Width="16" Height="16" />
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</Grid.Resources>
<Grid.ColumnDefinitions>
<ColumnDefinition></ColumnDefinition>
</Grid.ColumnDefinitions>
<StackPanel Grid.Column="2" Orientation="Horizontal" HorizontalAlignment="Right" Margin="3">
<Button Name="RemoveItemBtn" Style="{StaticResource IconButtonStyle}"></Button>
</StackPanel>
</Grid>
</UserControl>
字符串
尝试结果为零:
- 将图像设置为内容
- 使用imagebrush设置背景
- 设置图像的绝对路径
- 将映像构建操作设置为“资源”。
- 重新启动VS
- VS实验示例的重置
2条答案
按热度按时间2w2cym1i1#
在ControlTemplate中,我尝试作为图像源
字符串
在项目目录中有png文件,它对我很有效...
s71maibg2#
字符串
这个变体工作,问题是关于图像。要使其在映像的属性中工作构建操作应设置为资源。此外,如果有多个图像,则每个图像都应该有Build Action作为**Resource*。