献上效果图:
预期效果
1)Listbox动态选择模版
2)鼠标移上去后显示操作按钮
模版实现
(FButton请参考 Fbutton模版)
1.加号模版
<span style="font-size:14px;"> <ControlTemplate x:Key="AddNewTemplate" TargetType="{x:Type ListBoxItem}">
<Border x:Name="Border"
BorderThickness="0"
CornerRadius="5"
SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}">
<Border.Background>
<ImageBrush ImageSource="/Management;component/Images/mohmoo/bg_card.png" />
</Border.Background>
<!--<Grid Width="{TemplateBinding Width}"
Height="{TemplateBinding Height}"
ShowGridLines="True">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="30" />
<ColumnDefinition Width="auto" />
<ColumnDefinition Width="30" />
</Grid.ColumnDefinitions>-->
<local:FButton Width="{TemplateBinding Width}"
Height="{TemplateBinding Height}"
HorizontalAlignment="Center"
VerticalContentAlignment="Center"
Background="Transparent"
Command="{Binding AddClickCommand}"
FIcon=""
FIconSize="70"
Foreground="#0068FD"
MouseOverBackground="Transparent"
MouseOverForeground="Red"
PressedBackground="Transparent"
Template="{StaticResource FButton_Template}" />
<!--</Grid>-->
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter TargetName="Border" Property="BorderThickness" Value="2" />
<Setter TargetName="Border" Property="BorderBrush" Value="#24A6CA" />
</Trigger>
<Trigger Property="IsEnabled" Value="False">
<Setter TargetName="Border" Property="Opacity" Value="{StaticResource DisableOpacity}" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate></span>
2.名片模版
<ControlTemplate x:Key="CardTemplate" TargetType="{x:Type ListBoxItem}">
<Border x:Name="Border"
BorderThickness="0"
CornerRadius="5"
SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}">
<Border.Background>
<ImageBrush ImageSource="/Management;component/Images/mohmoo/bg_card.png" />
</Border.Background>
<Grid Margin="1">
<Grid Background="Transparent">
<Grid.RowDefinitions>
<RowDefinition Height="50" />
<RowDefinition Height="50" />
<RowDefinition Height="*" />
<!--<RowDefinition Height="40" />-->
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="30" />