private void TreeView_MouseDown(object sender, MouseButtonEventArgs e) { if (e.RightButton == MouseButtonState.Pressed) { Point point = e.GetPosition(TreeView_Item); RemoteTreeViewItem element = TreeView_Item.GetElementFromPoint <RemoteTreeViewItem>(point); foreach (MenuItem item in TreeView_Item.ContextMenu.Items) { item.IsEnabled = true; //将所有右键菜单启用 } if (element != null) { element.IsSelected = true; if (element.RemoteType == RemoteType.dir) { ((MenuItem)TreeView_Item.ContextMenu.Items[0]).IsEnabled = false; //打开 ((MenuItem)TreeView_Item.ContextMenu.Items[1]).IsEnabled = false; //"打开(后台)" ((MenuItem)TreeView_Item.ContextMenu.Items[2]).IsEnabled = false; //"打开(外部)" } } else { TreeViewItem item = TreeView_Item.SelectedItem as TreeViewItem; if (item != null) { item.IsSelected = false; } ((MenuItem)TreeView_Item.ContextMenu.Items[0]).IsEnabled = false; //打开 ((MenuItem)TreeView_Item.ContextMenu.Items[1]).IsEnabled = false; //"打开(后台)" ((MenuItem)TreeView_Item.ContextMenu.Items[2]).IsEnabled = false; //"打开(外部)" ((MenuItem)TreeView_Item.ContextMenu.Items[5]).IsEnabled = false; //"重命名" ((MenuItem)TreeView_Item.ContextMenu.Items[6]).IsEnabled = false; //"删除" } } }
private void TreeView_MouseDoubleClick(object sender, MouseButtonEventArgs e) { try { Point point = e.GetPosition(TreeView_Item); RemoteTreeViewItem element = TreeView_Item.GetElementFromPoint <RemoteTreeViewItem>(point); if (element != null) { if (element.IsHeaderEdit == false && element.RemoteType != RemoteType.dir) { RemoteItems.OpenRemote((RemoteTreeViewItem)TreeView_Item.SelectedItem, DbItemSetting.OPEN_DEFAULT); } } } catch (Exception ex) { MainWindow.ShowMessageDialog("错误", ex.Message); } }