Metro学习笔记(用FileOpenPicker打开图片)

 

 

Show.XAML

                
       
           
               
                   
                       
                           
                               
                                   
                               

                           

                       

                   

               

               
           

       

        
       

 

Show.XAML.CS

async private void Open()
        {
            ObservableCollection imageItemListBig = new ObservableCollection();
            ObservableCollection imageItemListSmall = new ObservableCollection();
            FileOpenPicker openPicker = new FileOpenPicker();
            openPicker.ViewMode = PickerViewMode.Thumbnail;
            openPicker.SuggestedStartLocation = PickerLocationId.PicturesLibrary;
            openPicker.FileTypeFilter.Add(".jpg");
            openPicker.FileTypeFilter.Add(".gif");
            openPicker.FileTypeFilter.Add(".png");
            openPicker.FileTypeFilter.Add(".bmp");

            var fileList = await openPicker.PickMultipleFilesAsync();

            if (fileList.Count > 0)
            {
                foreach (var item in fileList)
                {
                    //原图
                    IRandomAccessStream randomAccessStream = await item.OpenReadAsync();
                    ImageItem imageItemBig = new ImageItem();
                    imageItemBig.ImageBig.SetSource(randomAccessStream);
                    imageItemListBig.Add(imageItemBig);

                                  }           
            }

              fvShow.ItemsSource = imageItemListBig;
        }

 

ImageIteam.cs

public event PropertyChangedEventHandler PropertyChanged;

        protected virtual void OnPropertyChanged(string propertyName)
        {
            if (this.PropertyChanged != null)
            {
                this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
            }
        }

               //原图
        private BitmapImage _ImageBig = new BitmapImage();
        public BitmapImage ImageBig
        {
            get
            {
                return _ImageBig;
            }
            set
            {
                if (_ImageBig != value)
                {
                    _ImageBig = value; this.OnPropertyChanged("ImageBig");
                }
            }
        }

        //原图
        public void SetImageBig(String path)
        {
            ImageBig = new BitmapImage(new Uri(path));
        }

转载于:https://www.cnblogs.com/louyuhao/archive/2012/07/11/2586156.html

你可能感兴趣的:(Metro学习笔记(用FileOpenPicker打开图片))