void moverightWhenDel_Tick(object sender, EventArgs e) { try { if (((PanelControl)this.maingrid.Children[CurrentPage - 2]).Margin.Left + 6 <= 0) { for (int i = 0; i <= CurrentPage - 2; i++) { double tempMargin = ((PanelControl)this.maingrid.Children[i]).Margin.Left; ((PanelControl)this.maingrid.Children[i]).Margin = new Thickness(tempMargin + 6, 0, 0, 0); } } else { moverightWhenDel.IsEnabled = false; CurrentPage -= 1; UpdatePageControl(PageCount); UpdatePageControlChecked(CurrentPage); } } catch (Exception ee) { MyWork.NoteLog(ee); } }
/// <summary> /// 初始化每个面板的快捷方式信息 /// </summary> private List <ItemInfo> ReadData() { try { List <ItemInfo> allItem = new List <ItemInfo>(); for (int i = 1; i <= PageCount; i++) { List <ItemInfo> itemList = i.GetData(); allItem.AddRange(itemList); foreach (var info in itemList) { var ic = new ItemControl(info.ItemPath, info.ItemName, i, info.ItemIndex); ((PanelControl)this.maingrid.Children[i - 1]).wrapPanel1.Children.Insert(ic.OverallIndex, ic); ic.del += new DelItem(DelItem); ic.movePage += new MoveItemPage(MoveItemOnPage); } } return(allItem); } catch (Exception ee) { MyWork.NoteLog(ee); return(null); } }
/// <summary> /// 更新分页标志布局 /// </summary> /// <param name="count">页面个数</param> private void UpdatePageControl(int count) { try { double firstMargin = (500 - 30 * count + 10) / 2; for (int i = 0; i < count; i++) { ((PageControl)this.pagingGrid.Children[i]).Margin = new Thickness(firstMargin + 30 * i, 0, 0, 0); } } catch (Exception ee) { MyWork.NoteLog(ee); } }
private void adddir_Click(object sender, RoutedEventArgs e)//右键菜单--添加文件夹 { try { this.Deactivated -= new EventHandler(Window_Deactivated); System.Windows.Forms.FolderBrowserDialog fb = new System.Windows.Forms.FolderBrowserDialog(); fb.ShowNewFolderButton = false; fb.Description = "选择要添加的目录"; if (fb.ShowDialog() == System.Windows.Forms.DialogResult.OK) { AddItem(fb.SelectedPath, CurrentPage); } this.Deactivated += new EventHandler(Window_Deactivated); } catch (Exception ee) { MyWork.NoteLog(ee); } }
/// <summary> /// 创建指定数目的面板 /// </summary> /// <param name="count">要创建的面板个数</param> private void SetPanel(int count) { try { double marginLeft = this.Width; for (int i = 0; i < count; i++) { PanelControl panel = new PanelControl(marginLeft * i); PageControl page = new PageControl(false); this.maingrid.Children.Add(panel); this.pagingGrid.Children.Add(page); } } catch (Exception ee) { MyWork.NoteLog(ee); } }
/// <summary> /// 从面板删除快捷方式 /// </summary> /// <param name="page">所在页面,从1开始</param> /// <param name="index">索引</param> private void DelItem(int page, int index) { try { int tempcount = PageCount; PanelControl tempPanel = (PanelControl)this.maingrid.Children[page - 1]; string path = ((ItemControl)tempPanel.wrapPanel1.Children[index]).Path; ((PanelControl)this.maingrid.Children[page - 1]).wrapPanel1.Children.RemoveAt(index); path.Del(); if (((PanelControl)this.maingrid.Children[page - 1]).wrapPanel1.Children.Count == 0)////如果此页已经没有图标 { #region if (this.maingrid.Children.Count != 1) { this.maingrid.Children.RemoveAt(page - 1); this.pagingGrid.Children.RemoveAt(page - 1); PageCount -= 1; page.UpdatePage(); if (page != 1) { moverightWhenDel.IsEnabled = true; } if (page == 1 && PageCount >= 1) { moveleftWhenDel.IsEnabled = true; } } #endregion } else { page.UpdateIndex(index); for (int i = index; i < ((PanelControl)this.maingrid.Children[page - 1]).wrapPanel1.Children.Count; i++) { ((ItemControl)((PanelControl)this.maingrid.Children[page - 1]).wrapPanel1.Children[i]).OverallIndex--; } } } catch (Exception ee) { MyWork.NoteLog(ee); } }
/// <summary> /// 更新分页标志选中状态 /// </summary> /// <param name="currentPage">当前显示页面</param> private void UpdatePageControlChecked(int currentPage) { try { for (int i = 0; i < this.pagingGrid.Children.Count; i++) { if (i + 1 == currentPage) { ((PageControl)this.pagingGrid.Children[i]).Checked = true; } else { ((PageControl)this.pagingGrid.Children[i]).Checked = false; } } } catch (Exception ee) { MyWork.NoteLog(ee); } }
private void addfile_Click(object sender, RoutedEventArgs e)//右键菜单--添加文件 { try { this.Deactivated -= new EventHandler(Window_Deactivated); System.Windows.Forms.OpenFileDialog of = new System.Windows.Forms.OpenFileDialog(); of.Multiselect = true; of.DereferenceLinks = false; if (of.ShowDialog() == System.Windows.Forms.DialogResult.OK) { foreach (string str in of.FileNames) { AddItem(str, CurrentPage); } } this.Deactivated += new EventHandler(Window_Deactivated); } catch (Exception ee) { MyWork.NoteLog(ee); } }
/// <summary> /// 判断快捷方式所指的文件(目录或驱动器)是否存在 /// </summary> private void UpdateItems() { try { foreach (var info in Dal.GetData()) { if (info.ItemType == 1 && !File.Exists(info.ItemPath)) { info.ItemPath.Del(); info.ItemPage.UpdateIndex(info.ItemIndex); } else if ((info.ItemType == 2 || info.ItemType == 3) && !Directory.Exists(info.ItemPath)) { info.ItemPath.Del(); info.ItemPage.UpdateIndex(info.ItemIndex); } } } catch (Exception ee) { MyWork.NoteLog(ee); } }
private void Window_Closing(object sender, System.ComponentModel.CancelEventArgs e) { try { if (closeFlag == "") { this.Deactivated -= new EventHandler(Window_Deactivated); this.WindowState = WindowState.Normal; if (MessageBox.Show("退出EasyStarter吗?", "提示", MessageBoxButton.YesNo, MessageBoxImage.Warning) == MessageBoxResult.Yes) { Application.Current.Shutdown(); } else { e.Cancel = true; this.Deactivated += new EventHandler(Window_Deactivated); } } } catch (Exception ee) { MyWork.NoteLog(ee); } }
void moveleft_Tick(object sender, EventArgs e)//向后翻页 { try { if (((PanelControl)this.maingrid.Children[CurrentPage]).Margin.Left - 6 >= 0) { for (int i = 0; i < this.maingrid.Children.Count; i++) { double tempMargin = ((PanelControl)this.maingrid.Children[i]).Margin.Left; ((PanelControl)this.maingrid.Children[i]).Margin = new Thickness(tempMargin - 6, 0, 0, 0); } } else { moveleft.IsEnabled = false; CurrentPage += 1; UpdatePageControlChecked(CurrentPage); } } catch (Exception ee) { MyWork.NoteLog(ee); } }