<UserControl x:Class="XXX.Apps.UI.Wpf.UserControls.AccountTile"
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:local="clr-namespace:XXX.Apps.UI.Wpf.UserControls"
xmlns:Controls="http://metro.mahapps.com/winfx/xaml/controls"
xmlns:iconPacks="http://metro.mahapps.com/winfx/xaml/iconpacks"
mc:Ignorable="d">
...
<iconPacks:PackIconModern Grid.Column="1" Grid.Row="1" Height="12" Kind="Delete" MouseLeftButtonDown="deleteIcon_Click" Foreground="White" VerticalAlignment="Center" HorizontalAlignment="Center" />
给了我
抛出异常:'System.Windows.Markup.XamlParseException'中 PresentationFramework.dll
其他信息:'设置connectionId引发异常。'线 数字'8'和行位置'14'。
内
无法加载文件或程序集'MahApps.Metro.IconPacks, Version = 1.6.0.0,Culture = neutral,PublicKeyToken = null'或其中一个 依赖。需要一个强名称的程序集。 (例外 HRESULT:0x80131044)
...仅当我在图标上有MouseLeftButtonDown
属性时才会显示。
显然我自己的集会已签署。我已将'MahApps.Metro.IconPacks'添加为NuGet包。不要告诉我你没有签署你的集会吗?
如何解决这个问题?感谢。
答案 0 :(得分:0)
由于图标包没有强签名,您可以尝试使用它:
<Button Content="{iconPacks:PackIconModern Delete, Width=12, Height=12}" Width="12" Height="12" Style="{StaticResource IconButtonStyle}" Click="deleteIcon_Click" />
这就是风格:
<Style x:Key="IconButtonStyle" TargetType="Button">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<Grid Background="Transparent" VerticalAlignment="Center" HorizontalAlignment="Center">
<ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
请注意,如果您设置宽度和高度,则单击图标外部不会触发事件