我在WPF系统中使用了物料设计包图标。是否可以在图标上进行类似点击事件的操作。就像当我们单击该图标时,它将转到我们想要的页面(类似按钮)。
这是我在WPF WINDOWS上的代码
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
main( )
{
char *str1=malloc(20 * sizeof(char));
char *str2 = "Front" ;
char *str3 ;
if(str1){
strcpy(str1,"United");
str3 = strcat ( str1, str2 ) ;
printf ( "%s\n", str3 ) ;
free(str1);
}
else{
printf("malloc failure!\n");
}
}
我同时使用按钮和图标(并且我同时需要),这是我需要的,当用户单击图标或堆栈面板内的任何地方时,它也将像我的按钮单击事件一样。可能吗 ?还是我需要使用其他图标?
答案 0 :(得分:1)
您可以使用MaterialDesignPack程序包中定义的MouseDown事件。
<materialDesign:PackIcon Kind="MapMarkerMinus" Height="20" Width="25" Margin="10" MouseDown="UIElement_OnMouseEnter"/>
答案 1 :(得分:0)
最好将图标放入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"/>