/// <summary> /// 批量导出 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void Batch_Export_Click(object sender, RoutedEventArgs e) { var parent = ContextMenuService.GetPlacementTarget(LogicalTreeHelper.GetParent(sender as MenuItem)); //措施状态 string cszt = (parent as TreeViewItem).Name; Folder.FolderBrowserDialog choose_folder = new Folder.FolderBrowserDialog(); choose_folder.Description = "请选择文件存储位置"; choose_folder.ShowNewFolderButton = true; if (choose_folder.ShowDialog() == Folder.DialogResult.OK) { string path = choose_folder.SelectedPath; if (string.IsNullOrEmpty(path)) { MessageBox.Show("路径不能为空"); return; } else { try { ExportTables(path, cszt); MessageBox.Show("导出成功!"); } catch (Exception ex) { MessageBox.Show("导出失败!原因:" + ex.Message); return; } } } }
/// <summary> /// 设置取消禁止经过 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void lineMenuItem2_Click(object sender, RoutedEventArgs e) { var a = (Line)ContextMenuService.GetPlacementTarget(LogicalTreeHelper.GetParent(sender as MenuItem)); string lineName = a.Name.Substring(1); string[] fromTo = lineName.Split('_'); int from = Convert.ToInt32(fromTo[0]); int to = Convert.ToInt32(fromTo[1]); //正常路径 if (a.Stroke == Brushes.LightSkyBlue) { newMap.AddMustNotPassAnyWayPath(from, to); a.Stroke = Brushes.Red; } //必经 else if (a.Stroke == Brushes.Green) { newMap.RemoveMustPassEitherWayPath(from, to); newMap.AddMustNotPassAnyWayPath(from, to); a.Stroke = Brushes.Red; } //不通 else if (a.Stroke == Brushes.Red) { newMap.RemoveMustNotPassAnyWayPath(from, to); a.Stroke = Brushes.LightSkyBlue; } WriteLine("改变了禁止路径,重新分析拓补图."); SearchUsefulMatrix(); }
void stop_Click(object sender, RoutedEventArgs e) { Object obj = ContextMenuService.GetPlacementTarget( LogicalTreeHelper.GetParent(sender as MenuItem)); ListViewItem list = obj as ListViewItem; MessageBox.Show(list.Content.ToString()); }
private void Tpj_Import_Click(object sender, RoutedEventArgs e) { TreeViewItem parent = ContextMenuService.GetPlacementTarget(LogicalTreeHelper.GetParent(sender as MenuItem)) as TreeViewItem; if (parent != null) { doTpjImport(parent.Name); } }
/// <summary> /// 多表导入 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void Batch_Import_Click(object sender, RoutedEventArgs e) { var parent = ContextMenuService.GetPlacementTarget(LogicalTreeHelper.GetParent(sender as MenuItem)); //措施状态 string cszt = (parent as TreeViewItem).Name; if (cszt.Equals("csq")) { App.Mycache.Set("cszt", 0, App.policy); } else { App.Mycache.Set("cszt", 1, App.policy); } new BatchImport().Show(); }
private void MenuItem_Delete_Click(object sender, RoutedEventArgs e) { var menuItem = (sender as MenuItem); var contextMenu = (menuItem.Parent as ContextMenu); Rectangle rectangle = ContextMenuService.GetPlacementTarget(contextMenu) as Rectangle; if ((string)rectangle.Tag == "IsTaken") { MessageBox.Show("Cant remove this table! It's currently taken !", "Table Editor", MessageBoxButton.OK, MessageBoxImage.Exclamation); return; } Mains.TableButtonList.RemoveAll(x => x.Name == this.TableName); Layout.Children.Remove(this); }
/// <summary> /// 设为终点 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void nodeMenuItem3_Click(object sender, RoutedEventArgs e) { var a = (Ellipse)ContextMenuService.GetPlacementTarget(LogicalTreeHelper.GetParent(sender as MenuItem)); int num = Convert.ToInt32(a.Name.Substring(1)); if (end != -1) { textList[end].Text = end.ToString(); nodeList[end].Fill = Brushes.LightSkyBlue; } //当前是正常点 if (a.Fill == Brushes.LightSkyBlue) { a.Fill = Brushes.Yellow; textList[num].Text = "E"; start = num; } //是必经点 else if (a.Fill == Brushes.Green) { newMap.MustPassPoints.Remove(num); a.Fill = Brushes.Yellow; textList[num].Text = "E"; start = num; } //是起点或终点 else if (a.Fill == Brushes.Yellow) { if (num == start) { textList[num].Text = "E"; a.Fill = Brushes.Green; end = num; } if (num == end) { end = -1; textList[num].Text = "E"; a.Fill = Brushes.Green; end = num; } } }
private void miDetial_Click(object sender, RoutedEventArgs e) { //PublicParams.padRectParams.Visibility = Visibility.Visible; if (PublicParams.padRectParams != null) { return; } ContentControl ccTemp = (ContentControl)ContextMenuService.GetPlacementTarget(LogicalTreeHelper.GetParent(sender as MenuItem)); PublicParams.padRectParams = new PadRectParams(ccTemp.Name, ccTemp.ActualWidth, ccTemp.ActualHeight, Canvas.GetLeft(ccTemp), Canvas.GetTop(ccTemp), Convert.ToInt32(ccTemp.FontSize), ref ccTemp) { Width = 400, Height = 300, VerticalAlignment = VerticalAlignment.Center, HorizontalAlignment = HorizontalAlignment.Center, Name = "padRectParams", Visibility = Visibility.Visible }; PublicParams.pubLayoutRoot.Children.Add(PublicParams.padRectParams); Canvas.SetZIndex(PublicParams.padRectParams, 65535); //Control c = ccTemp.DataContext as Control; //c.Height = 300; //ccTemp.Height = 300; //Rectangle rt = (Rectangle)ccTemp.Content; //rt.Height = 300; }
void Load() { Debug.WriteLine("Load()"); var source = ContextMenuService.GetPlacementTarget(_targetMenu); var placeTarget = _targetMenu.PlacementTarget as UIElement; if (source != null) { Debug.WriteLine("source is valid"); (source as UIElement).TouchDown += Source_TouchDown; (source as UIElement).MouseDown += Source_MouseDown; } else if (placeTarget != null) { Debug.WriteLine("source is null, placeTarget is valid"); placeTarget.TouchDown += Source_TouchDown; placeTarget.MouseDown += Source_MouseDown; } else { Debug.WriteLine("source is null, placeTarget is null"); } }
private void miZindex_Click(object sender, RoutedEventArgs e) { //throw new NotImplementedException(); try { int order = 0; MenuItem mi = sender as MenuItem; switch (mi.Tag.ToString()) { case "miZindexUpTop": //置于顶层 order = 1; break; case "miZindexUpOne": //上移一层 order = 2; break; case "miZindexDownBottom": //置于底层 order = 3; break; case "miZindexDownOne": //下移一层 order = 4; break; default: break; } ContentControl ccModular = (ContentControl)ContextMenuService.GetPlacementTarget(LogicalTreeHelper.GetParent(LogicalTreeHelper.GetParent(mi))); SetZindex(ccModular, order); } catch (Exception ex) { LogHelper.WriteLog(ex.Message + "--miZindex_Click"); } }
void UpdatePlacementTargetEventHandlers() { UpdatePlacementTargetEventHandlers(ContextMenuService.GetPlacementTarget(AssociatedObject)); }
//获取触发事件控件 private UIElement GetSender(object sender) { DependencyObject dependency = LogicalTreeHelper.GetParent(sender as MenuItem); return(ContextMenuService.GetPlacementTarget(dependency)); }