WPF中的Image控件上传,保存,显示头像

WPF中的Image控件上传,保存,显示头像

1
2
3
4
5
6
7
8
9
10
11
12
//选择电脑上的图片显示到Image控件中
       private void btnUpload_Click(object sender, RoutedEventArgs e)
       {
           // 打开文件对话框以选择要上传的图片 
           OpenFileDialog openFileDialog = new OpenFileDialog();
           openFileDialog.Filter = "Image Files (*.jpg, *.jpeg, *.png, *.bmp)|*.jpg;*.jpeg;*.png;*.bmp";
           if (openFileDialog.ShowDialog() == true)
           {
               // 将选定的图片文件加载到Image对象中 
               myImage.Source = new BitmapImage(new Uri(openFileDialog.FileName));
           }
       }

 


保存是随机生成名字,保存到应用程序目录下的Images目录下,记得测试时在Debug目录下手工建立, 数据库里就存名字就行了

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
string _Photo = "";
          
           try
           {
               string filename = Guid.NewGuid().ToString() + ".jpg";
               var encoder = new PngBitmapEncoder();
               encoder.Frames.Add(BitmapFrame.Create((BitmapSource)myImage.Source));
               FileStream file = new FileStream($"Images/{filename}", FileMode.Create);
               encoder.Save(file);
               file.Close();
               _Photo = filename;
           }
           catch (Exception ex)
           {
                 
           }

 

1
2
3
4
5
6
7
8
9
10
11
#region 显示头像
           if (!string.IsNullOrEmpty(u.Photo))
           {
               string path = AppDomain.CurrentDomain.BaseDirectory + "Images";
               BitmapImage bmp = new BitmapImage();
               bmp.BeginInit();
               bmp.UriSource = new Uri(path + "\\" + u.Photo);
               bmp.EndInit();
               myImage.Source = bmp;
           }
           #endregion

 


 

posted @   牛腩  阅读(597)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
历史上的今天:
2019-06-03 thinkphp项目部署在phpstudy里的nginx上
点击右上角即可分享
微信分享提示