コード例 #1
0
        //--------------------------------------------------------------
        #region Methods
        //--------------------------------------------------------------

        private void AddContextMenu()
        {
            var saveMergePoints           = new[] { new MergePoint(MergeOperation.InsertBefore, "Close"), MergePoint.Append };
            var insertBeforeFileSeparator = new[] { new MergePoint(MergeOperation.InsertBefore, "FileSeparator"), MergePoint.Append };

            _contextMenuNodes = new MergeableNodeCollection <ICommandItem>
            {
                new MergeableNode <ICommandItem>(CommandItems["Save"], saveMergePoints),
                new MergeableNode <ICommandItem>(CommandItems["SaveAs"], saveMergePoints),
                new MergeableNode <ICommandItem>(CommandItems["Close"], new MergePoint(MergeOperation.Replace, "Close"), MergePoint.Append),
                new MergeableNode <ICommandItem>(CommandItems["CloseAllButThis"], insertBeforeFileSeparator),
                new MergeableNode <ICommandItem>(CommandItems["CloseAll"], insertBeforeFileSeparator),
                new MergeableNode <ICommandItem>(new CommandSeparator("CloseSeparator"), insertBeforeFileSeparator),
                new MergeableNode <ICommandItem>(CommandItems["CopyFullPath"], insertBeforeFileSeparator),
                new MergeableNode <ICommandItem>(CommandItems["OpenContainingFolder"], insertBeforeFileSeparator),
                new MergeableNode <ICommandItem>(new CommandSeparator("UriSeparator"), insertBeforeFileSeparator),
            };

            DockContextMenuNodeCollections.Add(_contextMenuNodes);
        }
コード例 #2
0
 private void RemoveContextMenu()
 {
     DockContextMenuNodeCollections.Remove(_contextMenuNodes);
     _contextMenuNodes = null;
 }