123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197 |
- using GeekDesk.Constant;
- using GeekDesk.Util;
- using System;
- using System.ComponentModel;
- using System.IO;
- using System.Windows.Media.Imaging;
- /// <summary>
- /// 图标信息
- /// </summary>
- namespace GeekDesk.ViewModel
- {
- [Serializable]
- public class IconInfo : INotifyPropertyChanged
- {
- private string path; //路径
- private string name; //文件名
- private int count = 0; //打开次数
- [field: NonSerialized]
- private BitmapImage bitmapImage; //位图
- private byte[] imageByteArr; //图片 byte数组
- private string content; //显示信息
- private int imageWidth = (int)CommonEnum.IMAGE_WIDTH; //图片宽度
- private int imageHeight = (int)CommonEnum.IMAGE_HEIGHT; //图片高度
- private bool adminStartUp = false; //始终管理员方式启动 默认否
- private byte[] defaultImage; //默认图标
- private IconType iconType = IconType.OTHER;
- public IconType IconType
- {
- get
- {
- if (iconType == 0) return IconType.OTHER;
- return iconType;
- }
- set
- {
- iconType = value;
- OnPropertyChanged("IconType");
- }
- }
- public byte[] DefaultImage
- {
- get
- {
- return defaultImage;
- }
- set
- {
- defaultImage = value;
- OnPropertyChanged("DefaultImage");
- }
- }
- public bool AdminStartUp
- {
- get
- {
- return adminStartUp;
- }
- set
- {
- adminStartUp = value;
- OnPropertyChanged("AdminStartUp");
- }
- }
- public int Count
- {
- get
- {
- return count;
- }
- set
- {
- count = value;
- Content = Path + "\n" + Name + "\n使用次数: " + Count;
- OnPropertyChanged("Count");
- }
- }
- public string Name
- {
- get
- {
- return name;
- }
- set
- {
- name = value;
- Content = Path + "\n" + Name + "\n使用次数: " + Count;
- OnPropertyChanged("Name");
- }
- }
- public string Path
- {
- get
- {
- return path;
- }
- set
- {
- path = value;
- Content = Path + "\n" + Name + "\n使用次数: " + Count;
- OnPropertyChanged("Path");
- }
- }
- public BitmapImage BitmapImage
- {
- get
- {
- return ImageUtil.ByteArrToImage(ImageByteArr);
- }
- set
- {
- bitmapImage = value;
- ImageByteArr = ImageUtil.BitmapImageToByte(bitmapImage);
- OnPropertyChanged("BitmapImage");
- }
- }
- public byte[] ImageByteArr
- {
- get
- {
- return imageByteArr;
- }
- set
- {
- imageByteArr = value;
- OnPropertyChanged("ImageByteArr");
- }
- }
- public string Content
- {
- get
- {
- return content;
- }
- set
- {
- content = value;
- OnPropertyChanged("Content");
- }
- }
- public int ImageWidth
- {
- get
- {
- // 为了兼容旧版 暂时使用默认
- return (int)CommonEnum.IMAGE_WIDTH;
- }
- set
- {
- imageWidth = value;
- OnPropertyChanged("ImageWidth");
- }
- }
- public int ImageHeight
- {
- get
- {
- // 为了兼容旧版 暂时使用默认
- return (int)CommonEnum.IMAGE_HEIGHT;
- }
- set
- {
- imageHeight = value;
- OnPropertyChanged("ImageHeight");
- }
- }
- [field: NonSerializedAttribute()]
- public event PropertyChangedEventHandler PropertyChanged;
- private void OnPropertyChanged(string propertyName)
- {
- PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
- CommonCode.SaveAppData(MainWindow.appData);
- }
- }
- }
|