Example #1
0
        /// <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();
        }
Example #3
0
        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());
        }
Example #4
0
        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);
            }
        }
Example #5
0
        /// <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;
        }
Example #9
0
        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));
 }
Example #12
0
        //获取触发事件控件
        private UIElement GetSender(object sender)
        {
            DependencyObject dependency = LogicalTreeHelper.GetParent(sender as MenuItem);

            return(ContextMenuService.GetPlacementTarget(dependency));
        }