如何在WPF中的材料设计包图标上单击事件



我正在使用WPF系统中的材料设计包图标。是否可以在图标上进行单击事件之类的东西。就像当我们单击图标时,它将转到我们想要的页面(类似按钮)。

这是我在WPF Windows上的代码

 <ListViewItem Height="60">
           <StackPanel Orientation="Horizontal">
                   <materialDesign:PackIcon Kind="Man" Height="20" Width="25" Margin="10"/>
                    <Button x:Name="btnSalesman" Click="btnSalesman_Click" Content="Salesman" Background="{x:Null}" BorderBrush="{x:Null}" Foreground="Black" FontSize="10"/>
          </StackPanel>
 </ListViewItem>

我同时使用按钮和图标(而且我都需要)是我需要的是,当用户单击图标或Stackpanel内的任何地方时,我都需要像我的按钮点击事件一样。是否可以 ?或者我需要使用其他图标?

您可以使用MaterialDesignpack软件包中定义的Mousedown事件。

 <materialDesign:PackIcon Kind="MapMarkerMinus" Height="20" Width="25" Margin="10" MouseDown="UIElement_OnMouseEnter"/>

您最好将图标放入DataTemplate中,然后将模板应用于按钮;模板和样式都是WPF闪耀的两个方面。

从我的头顶(未测试):

<Window.Resources>
    <DataTemplate x:Key="ButtonContentTemplate">
      <StackPanel Orientation="Horizontal">
        <materialDesign:PackIcon Kind="Man" Height="20" Width="25" Margin="10"/>
        <ContentPresenter Content="{Binding}"/>
      </StackPanel>
    </DataTemplate>
  </Window.Resources>

然后,您可以将模板应用于一个或多个按钮:

<Button ContentTemplate="{StaticResource ButtonContentTemplate}" 
        Content="Salesman"/>

最新更新