如何制作一个当鼠标悬停在按钮上时会改变图像的图像按钮WPF?我正在尝试制作一个图像按钮,当鼠标悬停在按钮上时它会更改图像,我尝试了一些事情这是我尝试的最后一件事,但它不起作用:我只想使用XAML,没有cs文件谢谢您的触发器将应用于StackPanel。它需要在ControlTemplate上设置try:在这种情况下。您可以使用触发器来设置图像的来源,从而无需在多个UI元素上切换可见性。类似于:您需要一个辅助类来为每个按钮状态和按钮样式附加imagesource属性。将助手类放在WPF项目的Helpers文件夹中。助手类publicstaticclassImageLoader{publicstaticImageSourceGetDefaultImage(DependencyObjectobj){return(ImageSource)obj.GetValue(DefaultImageProperty);}publicstaticvoidSetDefaultImage(DependencyObjectobj,ImageSourcevalue){obj.SetValue(DefaultImageProperty,value);}publicstaticreadonlyDependencyPropertyDefaultImageProperty=DependencyProperty.RegisterAttached("DefaultImage",typeof(ImageSource),typeof(ImageLoader),newUIPropertyMetadata(null));publicstaticImageSourceGetHoverImage(DependencyObjectobj){return(ImageSource)obj.GetValue(HoverImageProperty);}publicstaticvoidSetHoverImage(DependencyObjectobj,ImageSourcevalue){obj.SetValue(HoverImageProperty,value);}publicstaticreadonlyDependencyPropertyHoverImageProperty=DependencyProperty.RegisterAttached("HoverImage",typeof(ImageSource),typeof(ImageLoader),newUIPropertyMetadata(null));公共静态ImageSourceGetDisabledImage(DependencyObjectobj){return(ImageSource)obj.GetValue(DisabledImageProperty);}publicstaticvoidSetDisabledImage(DependencyObjectobj,ImageSourcevalue){obj.SetValue(DisabledImageProperty,value);}publicstaticreadonlyDependencyPropertyDisabledImageProperty.ImageProperty=Depended",typeof(ImageSource),typeof(ImageLoader),newUIPropertyMetadata(null));}按钮样式...用法......您可以使用图像样式实现:这是另一种用专门样式处理它的方法需要注意的一种方法是使用附加属性来适当地自定义图像文件可以进一步改善这一点。矩形对于命中测试很重要,否则IsMouseOver不会触发。而StretchonContentAlignment是必须的,否则按钮的ContentPresenter不会跨越整个按钮,所以IsMouseOver不会再触发以上是C#学习教程:如何制作鼠标悬停在按钮上时改变图像的图像按钮WPF?如果所有分享的内容对你有用,需要了解更多C#学习教程,希望大家多多关注。本文收集自网络,不代表立场,如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
