• 全部
  • C#综合技术
  • C#互联网桌面应用
  • AppLauncher
  • WinForm&WPF
  • C#开发新技术
  • 问答

wpf中图片

星空う繁华 2021-05-17 11:19:03
private void imgLamp2_MouseUp(object sender, MouseButtonEventArgs e)
{
if (isOpen)
{
imgLamp2.Source = new BitmapImage(new Uri("images/LampOff.png", UriKind.Relative));
isOpen = false;
}
else
{
imgLamp2.Source = new BitmapImage(new Uri("images/LampOn.png", UriKind.Relative));
isOpen = true;
}
}
这是wpf中一段程序 这个if(isopen)中isopen有什么用?
imgLamp2.Source = new BitmapImage(new Uri("images/LampOn.png", UriKind.Relative));
还有大佬能不能说明一下上面这一行程序各个段的意思 ? 谢谢了!
...全文
738 1 收藏 17
写回复
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
90e家 05-21
感觉基本的常识你都不知道,好好去学习基础去吧,imgLamp2 这是当前的图片名称,imgLamp2.Source 这是用来绑定图片,因为source对应的参数是Image类型,所以要new 然后后面跟上路径就能转成图片,IsOpen就是个开关,你叫flag叫啥玩意都行,就是个bool值罢了,搞简单点,用文字表示不也行么,启用 禁用两种状态不香么
回复
引用 15 楼 Eason0807的回复:
[quote=引用 10 楼 星空う繁华 的回复:][quote=引用 9 楼 Eason0807的回复:][quote=引用 7 楼 星空う繁华 的回复:][quote=引用 1 楼 Eason0807的回复:]UriKind. Relative表示前面那个路径是相对路径
imgLamp2.Source = new BitmapImage(new Uri("images/LampOn.png", UriKind.Relative)); 是不是这一行代码我只要改一下照片的路径就能在别处用了?[/quote] 不是用到别处,这行代码是"images/LampOn.png"这个相对路径加载图片,是根据这个路径加载图片的,你改了路径就加载你改后的图片,但是如果你改了之后的路径找不到文件就会报异常了[/quote] imgLamp2.Source = new BitmapImage(new Uri("images/LampOn.png", UriKind.Relative)); 这个开头的imgLamp2.Source什么意思[/quote] imgLamp2这个是控件的名称,Source是这个控件的属性,意思就是翻译后的字面意思,这个属性的值就是要加载的图片的url[/quote] 懂了懂了,谢谢
回复
Eason0807 05-20
引用 10 楼 星空う繁华 的回复:
[quote=引用 9 楼 Eason0807的回复:][quote=引用 7 楼 星空う繁华 的回复:][quote=引用 1 楼 Eason0807的回复:]UriKind. Relative表示前面那个路径是相对路径
imgLamp2.Source = new BitmapImage(new Uri("images/LampOn.png", UriKind.Relative)); 是不是这一行代码我只要改一下照片的路径就能在别处用了?[/quote] 不是用到别处,这行代码是"images/LampOn.png"这个相对路径加载图片,是根据这个路径加载图片的,你改了路径就加载你改后的图片,但是如果你改了之后的路径找不到文件就会报异常了[/quote] imgLamp2.Source = new BitmapImage(new Uri("images/LampOn.png", UriKind.Relative)); 这个开头的imgLamp2.Source什么意思[/quote] imgLamp2这个是控件的名称,Source是这个控件的属性,意思就是翻译后的字面意思,这个属性的值就是要加载的图片的url
回复
引用 11 楼 exception92的回复:
https://www.wpf-tutorial.com/
这个网址要么加载很慢要么打不开
回复
这个网址要么加载很慢要么打不开
回复
点一下,就是 打开的图片样式,再点一下就是关闭的图片样式, imgLamp2.Source 是给这个控制赋值,没必要这么写,复杂了
回复
引用 9 楼 Eason0807的回复:
[quote=引用 7 楼 星空う繁华 的回复:][quote=引用 1 楼 Eason0807的回复:]UriKind. Relative表示前面那个路径是相对路径
imgLamp2.Source = new BitmapImage(new Uri("images/LampOn.png", UriKind.Relative)); 是不是这一行代码我只要改一下照片的路径就能在别处用了?[/quote] 不是用到别处,这行代码是"images/LampOn.png"这个相对路径加载图片,是根据这个路径加载图片的,你改了路径就加载你改后的图片,但是如果你改了之后的路径找不到文件就会报异常了[/quote] imgLamp2.Source = new BitmapImage(new Uri("images/LampOn.png", UriKind.Relative)); 这个开头的imgLamp2.Source什么意思
回复
Eason0807 05-18
引用 7 楼 星空う繁华 的回复:
[quote=引用 1 楼 Eason0807的回复:]UriKind. Relative表示前面那个路径是相对路径
imgLamp2.Source = new BitmapImage(new Uri("images/LampOn.png", UriKind.Relative)); 是不是这一行代码我只要改一下照片的路径就能在别处用了?[/quote] 不是用到别处,这行代码是"images/LampOn.png"这个相对路径加载图片,是根据这个路径加载图片的,你改了路径就加载你改后的图片,但是如果你改了之后的路径找不到文件就会报异常了
回复
就是isopen可以用其他东西替换,然后整个程序只看isopen是 true还是flase ?
回复
引用 1 楼 Eason0807的回复:
UriKind. Relative表示前面那个路径是相对路径
imgLamp2.Source = new BitmapImage(new Uri("images/LampOn.png", UriKind.Relative)); 是不是这一行代码我只要改一下照片的路径就能在别处用了?
回复
用isOpen来控制显示那张图片。
回复
你注意看图片的入径,如果isOpen==True ,显示LampOn.png ,否则显示LampOn.png。这个isOpen作为一个全局变量来控制你显示的图片
回复
xuzuning 05-18
isOpen 只是普通的开关量,指示操作是否可以进行
回复
desperaso 05-18
这样就清楚了吧
if (isOpen) imgLamp2.Source = new BitmapImage(new Uri("images/LampOff.png", UriKind.Relative));
else imgLamp2.Source = new BitmapImage(new Uri("images/LampOn.png", UriKind.Relative));
isOpen != isOpen;
回复
desperaso 05-18
就是个表示状态的,就像开关,按一下显示开的图,再按一下显示关的图
回复
Eason0807 05-18
UriKind. Relative表示前面那个路径是相对路径
回复
相关推荐
发帖
C#
创建于2007-09-28

10.5w+

社区成员

.NET技术 C#
申请成为版主
帖子事件
创建了帖子
2021-05-17 11:19
社区公告

让您成为最强悍的C#开发者