WPF C# Button 加载图片,背景图片
vs2010
界面:
<Window x:Class="ButtonLoadIMG.MainWindow"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"Title="MainWindow" Height="350" Width="525" ResizeMode="NoResize"><Window.Resources><Style TargetType="Button" x:Key="BtnStyle1" ><Setter Property="Background"><Setter.Value><ImageBrush ImageSource="IMG/connect.png" /></Setter.Value></Setter></Style><Style TargetType="Button" x:Key="BtnStyle2"><Setter Property="Template"><Setter.Value><ControlTemplate TargetType="Button"><Grid Background="Transparent"><ContentPresenter x:Name="cp1" Content="{TemplateBinding Content}" VerticalAlignment="Center" HorizontalAlignment="Center" RecognizesAccessKey="True"/></Grid> <ControlTemplate.Triggers><Trigger Property="IsMouseOver" Value="True"><Setter TargetName="cp1" Property="Content"><Setter.Value><Image Source="IMG/connect.png"/></Setter.Value></Setter></Trigger><Trigger Property="IsPressed" Value="True"><Setter TargetName="cp1" Property="Content"><Setter.Value><Image Source="IMG/talking.png"/></Setter.Value></Setter></Trigger></ControlTemplate.Triggers></ControlTemplate></Setter.Value></Setter></Style></Window.Resources><Grid ><Grid.RowDefinitions><RowDefinition Height="150*" /><RowDefinition Height="150*" /></Grid.RowDefinitions><Button Height="100" HorizontalAlignment="Center" Margin="0" Name="btnWPF" VerticalAlignment="Center" Width="100" Style="{StaticResource BtnStyle2}" ><Button.Content><Image Source="IMG/set.png" /> </Button.Content></Button><Button Content="ButtonCS" Grid.Row="1" Height="100" HorizontalAlignment="Center" Margin="0" Name="btnCS" VerticalAlignment="Center" Width="100" MouseEnter="buttonCS_MouseEnter" MouseLeave="buttonCS_MouseLeave" MouseLeftButtonDown="buttonCS_MouseLeftButtonDown" PreviewMouseLeftButtonUp="btnCS_PreviewMouseLeftButtonUp"><Button.Background><!-- <ImageBrush ImageSource="/IMG/3g05.png" Stretch="None"/> --><ImageBrush x:Name="imgBtnCS"></ImageBrush></Button.Background></Button></Grid>
</Window>
逻辑代码:
using System;
using System.Windows;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Input;
using System.Windows.Controls;namespace ButtonLoadIMG
{/// <summary>/// MainWindow.xaml 的交互逻辑/// 右击图片->属性->1 复制到输出目录:始终复制, 2 生成操作:内容/// </summary>public partial class MainWindow : Window{public MainWindow(){InitializeComponent();LoadIMG("IMG/person.png");MouseButtonEventHandler mouseBtnEventHandler = new MouseButtonEventHandler(this.buttonCS_MouseLeftButtonDown);btnCS.AddHandler(System.Windows.Controls.Button.MouseDownEvent, mouseBtnEventHandler, true);//btnCS.AddHandler(System.Windows.Controls.Button.MouseDownEvent, new MouseButtonEventHandler(this.btnCS_MouseLeftButtonUp), true); }private void LoadIMG(string strIMG){#region 加载logo图片BitmapImage bitmapImg = new BitmapImage();bitmapImg.BeginInit();bitmapImg.UriSource = new System.Uri(strIMG, UriKind.RelativeOrAbsolute); ;//bitmapImg.DecodePixelWidth = 200;bitmapImg.EndInit();imgBtnCS.Stretch = Stretch.Uniform;imgBtnCS.ImageSource = bitmapImg;#endregion}private void SetBtnBackgroundIMG(string strIMGPath){#region 设置图片Image img = new Image();BitmapImage bitmapImg = new BitmapImage();bitmapImg.BeginInit();bitmapImg.UriSource = new System.Uri(strIMGPath, UriKind.RelativeOrAbsolute); ;//bitmapImg.DecodePixelWidth = 200;bitmapImg.EndInit();//imgBtnCS.Stretch = Stretch.Uniform;img.Source = bitmapImg;btnCS.Content = img;#endregion}private void buttonCS_MouseEnter(object sender, MouseEventArgs e){SetBtnBackgroundIMG("IMG/group.png");}private void buttonCS_MouseLeftButtonDown(object sender, System.Windows.Input.MouseButtonEventArgs e){SetBtnBackgroundIMG("IMG/ChangeGrp.png");}private void btnCS_PreviewMouseLeftButtonUp(object sender, MouseButtonEventArgs e){SetBtnBackgroundIMG("IMG/group.png");}private void buttonCS_MouseLeave(object sender, System.Windows.Input.MouseEventArgs e){SetBtnBackgroundIMG("IMG/person.png");}//private void btnCS_MouseLeftButtonUp(object sender, MouseButtonEventArgs e)//{// //SetBtnBackgroundIMG("IMG/group.png");//}}
}
WPF C# Button 加载图片,背景图片相关推荐
- Linux加载png背景图片,pillow使用之:粘贴一张带透明背景的png图片
说在最前 在使用pillow制作海报的过程中,最经常用的场景: 文字居中(地址) 粘贴一张带透明背景的png图片(地址) 画一个圆形的用户头像(地址) 准备 环境 linux/windows pyth ...
- 使用Glide加载、缓存图片、Gif、解决背景出现浅绿色、GlideModules冲突
之前一直使用Volley ImageLoader.或者Picasso,无意间发现Glide,觉得真的是棒棒的. 1.和其他的一样在Module的build.gradle中添加依赖 compile 'c ...
- 使用Glide加载、缓存图片、解决背景出现浅绿色
之前一直使用Volley ImageLoader.或者Picasso,无意间发现Glide,觉得真的是棒棒的. 1.和其他的一样在Module的build.gradle中添加依赖 compile 'c ...
- 自定义背景android,Android自定义Button并设置不同背景图片的方法
本文实例讲述了Android自定义Button并设置不同背景图片的方法.分享给大家供大家参考,具体如下: 1.自定义MyButton类 public class MyButton extends Bu ...
- 小程序一次性上传多个本地图片,上拉加载照片以及图片加载延迟解决之道
一:小程序之一次性上传多个本地相片 最近由于项目需要所以学了下小程序,也做了一些东西,随后便有了以下的一些总结了,现在说说如何使用小程序一次性上传多个本地相片. 问题描述 最近做项目的时候要实现一个上 ...
- gif android 点击 加载,android 加载显示gif图片的解决方案
使用方法: 1-把GifView.jar加入你的项目. 2-在xml中配置GifView的基本属性,GifView继承自View类,和Button.ImageView一样是一个UI控件.如: andr ...
- jquery 当页面图片加载之后_图片的懒加载和预加载
一.懒加载 [1.1]什么是懒加载? 懒加载也就是延迟加载,指的是在长网页中延迟加载图像,是一种很好优化网页性能的方式.当访问一个页面的时候,先把img元素或是其他元素的背景图片路径替换成一张大小为1 ...
- Qt中如何给按钮加图标(背景图片)
Qt中如何给按钮加图标(背景图片) 1. Qt Designer中拖入一Tool Button 2. 选择图标的图片放入工程目录下,如放在Resources内 3. 双击工程的Resource Fil ...
- ios wkweb设置图片_ios·WKWebView\UIWebView加载HTMLString,实现图片懒加载
背景: 项目中开发商品类型数据,数据可变性较大,所以商品详情数据存在文案和图片富文本显示,后台返回了html格式的数据供前端展示. 如果用webView直接显示的话,需要等html内容完全展示才能获取 ...
最新文章
- Java8中一个极其强悍的新特性,很多人没用过(非常实用)
- javascript中定义事件的三种方式
- vue php企业站案例,vue 开发企业微信整合案例分析
- 点击劫持:X-Frame-Options未配置
- 认真研究下HTML之id、name、form、submit
- 谷歌大脑小姐姐亲授:如何应聘成功羡煞旁人的AI工程师岗位
- 还不知道事务消息吗?这篇文章带你全面扫盲!
- Ugly Number II
- 下载百度翻译英文读音
- linux u盘读取速度,[操作系统]linux dd命令测试U盘读写速度
- win10系统下插入U盘有声音提示却不显示盘符
- Python 实现毫秒级淘宝抢购脚本
- 如何提高深度学习的泛化能力?
- 如何查看eclipse是32位还是64位
- 小程序配置服务器域名不生效问题
- 我的生活(小兵,班长,连长....大将)
- [审核]审核被拒绝(开发账号目前正在接受调查)
- 【C语言基础】C语言操作符
- QML 信号与响应方法的总结
- android开发用百度识别图片格式,Android开发学习之路-机器学习库(图像识别)、百度翻译...