public StickyNoteView(int viewId, ViewSettingData viewSettingData = null) : this() { ViewId = viewId; //赋值全局Id CustomTheme = new Theme(); //创建主题 CustomStyle = new Style(); //创建样式 LoadData(viewSettingData); StickyNoteView_MouseLeave(null, null); //调用鼠标离开事件,实现软件开启,标题栏自动隐藏 }
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(); }
/// <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(); } }
/// <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);//写入注册表 }