Ejemplo n.º 1
0
 public StickyNoteView(int viewId, ViewSettingData viewSettingData = null) : this()
 {
     ViewId      = viewId;                  //赋值全局Id
     CustomTheme = new Theme();             //创建主题
     CustomStyle = new Style();             //创建样式
     LoadData(viewSettingData);
     StickyNoteView_MouseLeave(null, null); //调用鼠标离开事件,实现软件开启,标题栏自动隐藏
 }
Ejemplo n.º 2
0
        public static void AddNewStickyNoteView(ViewSettingData viewSettingData = null)
        {
            int id = ViewId;

            if (EmptySlots.Count == 0)
            {
                ++ViewId;
            }
            else
            {
                id = EmptySlots.Dequeue();
            }
            new StickyNoteView(id, viewSettingData);//新建个便签窗口
            //stickyNoteView.Show();
        }
Ejemplo n.º 3
0
        /// <summary>
        /// 加载便签数据
        /// </summary>
        /// <param name="viewSettingData">便签配置数据</param>
        private void LoadData(ViewSettingData viewSettingData = null)
        {
            if (string.IsNullOrEmpty(this.StickyNoteTitle.Content.ToString()))
            {
                this.StickyNoteTitle.Content = string.Format("Note {0:##}", ViewId);
                //Console.WriteLine(ViewId);
            }
            if (Window.Themes.Count > 1)//如果获取到主题默认数据,随机赋值主题
            {
                Random rand = new Random();
                CurrentTheme = rand.Next(Window.Themes.Count - 1) + 1;
            }
            if (Window.Styles.Count > 1)
            {
                CurrentStyle = 1;
            }
            if (viewSettingData == null)//判断是否有传入窗口显示 相关数据,空则直接显示,否则加载数据
            {
                this.Show();
                return;
            }

            //this.SuspendLayout();
            //如果有数据,即传入的viewSettingData不为null,则进行数据赋值到对应的便签窗口
            this.Left   = viewSettingData.WinLeft;
            this.Top    = viewSettingData.WinTop;
            this.Width  = viewSettingData.WinWidth;
            this.Height = viewSettingData.WinHeigth;

            this.StickyNoteTitle.Content = viewSettingData.Title;
            this.contentTxt = viewSettingData.Data;
            //Console.WriteLine(this.contentTxt);
            Console.WriteLine(this.Opacity);
            this.backgroundOpacity = viewSettingData.Opacity.ToString();

            double tempValue = viewSettingData.Opacity + navOpacityIncrease;

            if (tempValue > 1)
            {
                this.navBarOpacity = "1";
            }
            this.navBarOpacity = tempValue.ToString();

            this.ViewTitle = viewSettingData.Title;
            if (viewSettingData.CustomTheme != null)
            {
                this.CustomTheme = viewSettingData.CustomTheme;
            }
            this.CurrentTheme = viewSettingData.Theme;
            if (viewSettingData.CustomStyle != null)
            {
                this.CustomStyle = viewSettingData.CustomStyle;
            }
            this.CurrentStyle = viewSettingData.Style;
            if (viewSettingData.CreationTime > new DateTime(2019, 5, 23))
            {
                this.CreationTime = viewSettingData.CreationTime;
            }
            //this.ResumeLayout(true);

            this.Show();
            if (viewSettingData.Hidden)
            {
                this.Hide();
            }
        }
Ejemplo n.º 4
0
        /// <summary>
        /// 将数据写入注册表
        /// </summary>
        /// <param name="id">便签窗口Id</param>
        /// <param name="data">此便签相关的数据对象</param>
        public static void SetData(string id, ViewSettingData data)
        {
            string dat = JsonConvert.SerializeObject(data);

            REG_PATH.SetValue(id, dat);//写入注册表
        }