WPF中button控制image的图片更换

大概功能是这样:一个按钮和一个Image控件,控件里默认一张图片,现在想通过点击按钮,实现在Image中会更换到下一张,再点击又会更换,循环.*所有图片都在工程的Imag... 大概功能是这样:
一个按钮和一个Image控件,控件里默认一张图片,
现在想通过点击按钮,实现在Image中会更换到下一张,再点击又会更换,循环.
*所有图片都在工程的Images文件夹

目前Code如下:
string path = System.Environment.CurrentDirectory + "/Images/" + kawaii_style1.jpg;
if (File.Exists(path))
{
image3.Source = new BitmapImage(new Uri(path, UriKind.Absolute));
}
else
{
image3.Source = null;
}

Error :The name 'kawaii_style1' does not exist in the current context
而且不知道功能能实现否.

求大神帮忙
展开
 我来答
Mickal小米
推荐于2016-02-27 · TA获得超过3666个赞
知道大有可为答主
回答量:1542
采纳率:100%
帮助的人:1772万
展开全部
首先你这边报错是有原因的,既然你把所有图片放在了工程目录下的Images文件夹下,那么你UriKind就应该是Relative。
你可以这么设置path的
string path = "/Images/" + kawaii_style1.jpg; 不需要前面的东东。你轮换的逻辑也很简单。可以设置个全局变量来记录当前的图片是Images第几张,如果path不存在,那就归零,设path为第一张图片的路径。
追问
大神有详细code吗,在自学中,编程基础不太够- -
追答
在窗体初始化函数里加:
image.Source = new BitmapImage(new Uri(GetImageAbsolutePath(1), UriKind.Absolute));

增加一个全局变量
int imageIndex = 0; //用来设置显示第几张图片

//此函数用来格式化图片绝对路径地址的,图片的完整绝对路径可以在属性框里获得
private string GetImageAbsolutePath(int index)
{
return string.Format("C:\\Users\\MickalW\\documents\\visual studio 2010\\Projects\\WpfApplication1\\WpfApplication1\\Images\\bz-head00{0}.jpg",index);
}

//按钮逻辑,用来循环显示Images下的图片
private void button_Click(object sender, RoutedEventArgs e)
{
imageIndex++;
if (File.Exists(GetImageAbsolutePath(imageIndex)))
{
image.Source =
new BitmapImage(new Uri(GetImageAbsolutePath(imageIndex), UriKind.Absolute));
}
else
{
imageIndex = 1;
image.Source =
new BitmapImage(new Uri(GetImageAbsolutePath(1), UriKind.Absolute));
}
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式