コード例 #1
0
        /// <summary> 获取所有快捷键数据
        /// </summary>
        private void InitKeyList()
        {
            List <tShortCutKey> tShortCutKeyList = new ShortcutKeyManageService().GettShortCutKeyList();

            tShortCutKeyDataSource = tShortCutKeyList;
            RefreshTreeView();
        }
コード例 #2
0
        /// <summary> 窗体创建时加载树节点
        ///
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void frmShortcutKey_Edit_SelectNode_Load(object sender, EventArgs e)
        {
            otTreeView1.AfterSelect -= new TreeViewEventHandler(otTreeView1_AfterSelect);
            List <tShortCutKey> tShortCutKeyList = new ShortcutKeyManageService().GettShortCutKeyList();

            EntityList = tShortCutKeyList;
            foreach (tShortCutKey tShortCutKeyItem in tShortCutKeyList)
            {
                imageList1.Images.Add(tShortCutKeyItem.ShortCutKeyID, tShortCutKeyItem.ShortCutKeyImg.ToImage());
            }
            OTTreeView.TreeViewNodeStruct StructTemp = new OTTreeView.TreeViewNodeStruct()
            {
                KeyName = "ShortCutKeyID", ValueName = "ShortCutKeyName", ParentName = "ParentID"
            };
            otTreeView1.SetDataSource <tShortCutKey>(tShortCutKeyList, StructTemp);
            otTreeView1.ExpandAll();
            if (SelectedEntity != null && !string.IsNullOrEmpty(SelectedEntity.ShortCutKeyID))
            {
                List <TreeNode> TreeNodeList = otTreeView1.GetAllTreeNode();
                TreeNode        TreeNodeTemp = TreeNodeList.Where(T1 => T1.Name == SelectedEntity.ShortCutKeyID).FirstOrDefault();
                if (TreeNodeTemp != null)
                {
                    otTreeView1.SelectedNode = TreeNodeTemp;
                }
            }
            Application.DoEvents();


            timer1.Enabled = true;
        }
コード例 #3
0
 /// <summary>
 /// 添加一个快捷键
 /// </summary>
 public void AddtShortcutKey(tShortCutKey Param)
 {
     Task.Delay(100).ContinueWith(task => {
         Invoke(new Action(() => {
             Param.ShortCutKeyImg    = UniversalMethod.ByteArayToHex(OfficeTools.Resource.Image.Image.ShortcutKeyDefualtImage.ToImage().ToByteArray());
             frmShortcutKey_Edit frm = new frmShortcutKey_Edit(Param);
             string NewID            = "";
             if (frm.ShowDialog() == DialogResult.OK)
             {
                 NewID = new ShortcutKeyManageService().AddShortCutKey(frm.CurrentEntity);
                 if (!string.IsNullOrEmpty(NewID))
                 {
                     InitKeyList();
                 }
             }
         }));
     });
 }
コード例 #4
0
        private void FillContent()
        {
            if (CurrentEntity == null)
            {
                return;
            }
            Img_pictureBox.Image = CurrentEntity.ShortCutKeyImg.ToImage();
            Name_textBox.Text    = CurrentEntity.ShortCutKeyName;


            Target_pictureBox.Image = CurrentEntity.TargetProgramImg.ToImage();
            Program_textBox.Text    = CurrentEntity.TargetProgramName;

            KeyName_textBox.Text  = UniversalMethod.GetKeyName(CurrentEntity.ShortCutKey);
            TypeName_textBox.Text = UniversalMethod.GetTypeName(CurrentEntity.ShortCutKeyType);


            if (CurrentEntity.ShortCutKeyType == 2)
            {
                Path_panel.Visible          = false;
                SysShortcutKey_textBox.Text = CurrentEntity.ShortCutKeyPath;
            }
            else
            {
                Path_panel.Visible = true;
                Path_textBox.Text  = CurrentEntity.ShortCutKeyPath;
            }
            LongPress_checkBox.Checked = CurrentEntity.LongPress == 2;

            string ParentName = "根目录";

            if (!string.IsNullOrEmpty(CurrentEntity.ParentID))
            {
                tShortCutKey tShortCutKeyTemp = new ShortcutKeyManageService().GettShortCutKeyList(new tShortCutKey()
                {
                    ShortCutKeyID = CurrentEntity.ParentID
                }).FirstOrDefault();
                if (tShortCutKeyTemp != null)
                {
                    ParentName = tShortCutKeyTemp.ShortCutKeyName;
                }
            }
            ParentNode_textBox.Text = ParentName;
        }
コード例 #5
0
        /// <summary> 以当前选中的快捷键为基础添加一个快捷键
        ///
        /// </summary>
        /// <param name="IsChidren">[true:添加的快捷键是当前选中的快捷键的子节点;false:添加的选中快捷键的同级快捷键]</param>
        private string AddtShortcutKey(bool IsChidren = true)
        {
            tShortCutKey AddData = new tShortCutKey()
            {
                ShortCutKeyName = "新增快捷键",
                ParentID        = "",
                ShortCutKey     = "",
                ShortCutKeyPath = "",
                ShortCutKeyType = 0,
                ShortCutKeyImg  = new byte[0]
            };

            AddData.ShortCutKeyImg = OfficeTools.Resource.Image.Image.ShortcutKeyDefualtImage.ToImage().ToByteArray();
            TreeNode CurrentNode = ShortcutKey_otTreeView.SelectedNode;

            if (CurrentNode != null)
            {
                tShortCutKey CurrentEntity = tShortCutKeyDataSource.Where(T1 => T1.ShortCutKeyID == CurrentNode.Name).FirstOrDefault();
                if (CurrentEntity != null)
                {
                    AddData.ParentID = CurrentEntity.ParentID;
                    if (IsChidren)
                    {
                        AddData.ParentID = CurrentEntity.ShortCutKeyID;
                    }
                }
            }
            int KeuNum = GetDefaultKey(AddData.ParentID);

            if (KeuNum != -1)
            {
                AddData.ShortCutKey = KeuNum.ToString();
            }
            string NewID = new ShortcutKeyManageService().AddShortCutKey(AddData);

            if (!string.IsNullOrEmpty(NewID))
            {
                InitKeyList();
            }
            return(NewID);
        }
コード例 #6
0
        /// <summary> 将文件拖拽到窗口后
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void Form1_DragDrop(object sender, DragEventArgs e)
        {
            System.Array ArrayTemp = ((System.Array)e.Data.GetData(DataFormats.FileDrop));
            if (ArrayTemp == null)
            {
                return;                   //不支持的格式直接返回
            }
            List <string> FilePathList = new List <string>();

            for (int i = 0; i < ArrayTemp.Length; i++)
            {
                FilePathList.Add(ArrayTemp.GetValue(i).ToString());
            }

            #region 获取父ID,使新添加的记录与当前选中节点处于同一级别

            string   StrParentId = "";
            TreeNode CurrentNode = ShortcutKey_otTreeView.SelectedNode;
            if (CurrentNode != null)
            {
                tShortCutKey CurrentEntity = tShortCutKeyDataSource.Where(T1 => T1.ShortCutKeyID == CurrentNode.Name).FirstOrDefault();
                if (CurrentEntity != null)
                {
                    StrParentId = CurrentEntity.ShortCutKeyID;
                }
            }
            #endregion 获取父ID,使新添加的记录与当前选中节点处于同一级别

            foreach (string PathItem in FilePathList)
            {
                string StrFileName = Path.GetFileNameWithoutExtension(PathItem);//获取快捷键名称

                int    KeyNum    = GetDefaultKey(StrParentId);
                string StrKeyNum = "";
                if (KeyNum != -1)
                {
                    StrKeyNum = KeyNum.ToString();                                                  //获取默认键编号
                }
                int FileType = 0;                                                                   //设置打开类型

                byte[] ImageByteArray = UniversalMethod.GetImageByFileName(PathItem).ToByteArray(); //获取文件图标

                #region 获取快捷方式真实路径
                string StrPath      = PathItem;
                string StrExtension = Path.GetExtension(PathItem);
                if (!string.IsNullOrEmpty(StrExtension))//文件
                {
                    if (StrExtension == ".lnk")
                    {
                        WshShell     ShellTemp        = new WshShell();
                        IWshShortcut IWshShortcutTemp = (IWshShortcut)ShellTemp.CreateShortcut(PathItem);
                        StrPath      = IWshShortcutTemp.TargetPath;
                        StrExtension = Path.GetExtension(StrPath);
                        if (string.IsNullOrEmpty(StrExtension))
                        {
                            FileType = 1;
                        }
                    }
                }
                else//文件夹
                {
                    FileType = 1;
                }
                Regex RegexTemp = new Regex(@"https{0,1}\:\/\/");
                if (RegexTemp.Match(StrPath).Success)//是否是网址
                {
                    FileType = 2;
                }
                #endregion 获取快捷方式真实路径

                #region 实例化AddData
                tShortCutKey AddData = new tShortCutKey()
                {
                    ShortCutKeyName = StrFileName,
                    ParentID        = StrParentId,
                    ShortCutKey     = StrKeyNum,
                    ShortCutKeyPath = StrPath,
                    ShortCutKeyType = (byte)FileType,
                    ShortCutKeyImg  = ImageByteArray
                };
                #endregion 实例化AddData
                string NewID = new ShortcutKeyManageService().AddShortCutKey(AddData);
                tShortCutKeyDataSource.Add(AddData);
            }
            InitKeyList();
        }