Пример #1
0
        private void axMapControl1_OnDoubleClick(object sender, IMapControlEvents2_OnDoubleClickEvent e)
        {
            DataTable dt = new DataTable();
            dt.Columns.Add("name", typeof(string));
            dt.Columns.Add("value", typeof(string));

            DataRow dr = dt.NewRow();
            dr["name"] = "行政区";
            dr["value"] = "沈阳";
            dt.Rows.Add(dr);

            DataRow dr2 = dt.NewRow();
            dr2["name"] = "面积";
            dr2["value"] = "1234.345";
            dt.Rows.Add(dr2);

            DataRow dr3 = dt.NewRow();
            dr3["name"] = "交通轨道长度";
            dr3["value"] = "1235.223";
            dt.Rows.Add(dr3);

            DataRow dr4 = dt.NewRow();
            dr4["name"] = "GDP总量";
            dr4["value"] = "234345";
            dt.Rows.Add(dr4);

            Control control = (Control)sender;
            System.Drawing.Point pt = control.PointToScreen(new System.Drawing.Point(e.x, e.y));
            frmMapFeatureAttr pFrmMapFeatureAttr = new frmMapFeatureAttr();
            pFrmMapFeatureAttr.AttrDataTable = dt;
            pFrmMapFeatureAttr.Location = pt;
            pFrmMapFeatureAttr.Show();
        }
Пример #2
0
 /// <summary>
 /// 双击鼠标
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void axMapControl1_OnDoubleClick(object sender, IMapControlEvents2_OnDoubleClickEvent e)
 {
     if (this.pDisplayFeedback != null)
     {
         IGeometry pGeometry = null;
         if (this.btnNewPolyline.Checked)//新建多义线
         {
             pGeometry = ((INewLineFeedback)this.pDisplayFeedback).Stop();
         }
         else if (this.btnNewPolygon.Checked)//新建多边形
         {
             pGeometry = ((INewPolygonFeedback)this.pDisplayFeedback).Stop();
         }
         else if (this.btnNewBezierCurve.Checked)//新建Bezier曲线
         {
             pGeometry = ((INewBezierCurveFeedback)this.pDisplayFeedback).Stop();
         }
         this.pDisplayFeedback = null;
         this.AddElement(pGeometry);
     }
 }
 //private void axMapControl1_OnMouseMove(object sender, IMapControlEvents2_OnMouseMoveEvent e)
 //{
 //    IPoint ipNew = axMapControl1.ActiveView.ScreenDisplay.DisplayTransformation.ToMapPoint(e.x, e.y);
 //    this.ribbonBar1.Text = "当前在地图上的坐标为  X:" + Convert.ToString(e.x) + "   Y:" + Convert.ToString(e.y);
 //}
 private void axMapControl1_OnDoubleClick(object sender, IMapControlEvents2_OnDoubleClickEvent e)
 {
     if (areaprocess.Checked)
     {
         IGraphicsContainer pgraghicscontainer = axMapControl1.Map as IGraphicsContainer;
         IActiveView pactiveview = pgraghicscontainer as ESRI.ArcGIS.Carto.IActiveView;
         IPoint ipNew;
         if (ippoints == null)
             ippoints = new MultipointClass();
         ipNew = axMapControl1.ActiveView.ScreenDisplay.DisplayTransformation.ToMapPoint(e.x, e.y);
         object o = Type.Missing;
         ippoints.AddPoint(ipNew, ref o, ref o);
         createpolygon(ippoints);
         if (ipPolyResult != null)
         {
             drawpolygon(ipPolyResult);
         }
         drawpoints(ippoints);
     }
 }
Пример #4
0
 private void axMapControl_OnDoubleClick(object sender, IMapControlEvents2_OnDoubleClickEvent e)
 {
     try
     {
         if (_App.CurrentTool != null)
         {
             _Tool = _ToolCol[_App.CurrentTool];
             _Tool.OnDblClick();
         }
     }
     catch (System.Exception ex)
     {
         return;
     }
 }
Пример #5
0
 private void axMapControl_OnDoubleClick(object sender, IMapControlEvents2_OnDoubleClickEvent e)
 {
     if (_App.CurrentTool != null)
     {
         _Tool = _ToolCol[_App.CurrentTool];
         _Tool.OnDblClick();
     }
 }
Пример #6
0
        private void axMapControl1_OnDoubleClick(object sender, IMapControlEvents2_OnDoubleClickEvent e)
        {
            switch (mTool)
            {
            case "Network":
                try
                {
                    //路径计算
                    //注意权重名称与设置保持一致
                    SolvePath("LENGTH");
                    //路径转换为几何要素
                    IPolyline pPolyLineResult = PathToPolyLine();
                    //获取屏幕显示
                    IActiveView    pActiveView    = this.axMapControl1.ActiveView;
                    IScreenDisplay pScreenDisplay = pActiveView.ScreenDisplay;
                    //设置显示符号
                    ILineSymbol pLineSymbol = new CartographicLineSymbolClass();
                    IRgbColor   pColor      = new RgbColorClass();
                    pColor.Red   = 255;
                    pColor.Green = 0;
                    pColor.Blue  = 0;
                    //设置线宽
                    pLineSymbol.Width = 4;
                    //设置颜色
                    pLineSymbol.Color = pColor as IColor;
                    //绘制线型符号
                    pScreenDisplay.StartDrawing(0, 0);
                    pScreenDisplay.SetSymbol((ISymbol)pLineSymbol);
                    pScreenDisplay.DrawPolyline(pPolyLineResult);
                    pScreenDisplay.FinishDrawing();
                }
                catch (System.Exception ex)
                {
                    MessageBox.Show("路径分析出现错误:" + "\r\n" + ex.Message);
                }
                //点集设为空
                mPointCollection = null;
                break;

            case "Edit":
                //判断是否鼠标左键
                if (e.button != 1)
                {
                    return;
                }

                ////判断是否处于编辑状态
                if (mEdit != null && mEdit.IsEditing())
                {
                    switch (cboTasks.SelectedIndex)
                    {
                    case 0:
                        mEdit.CreateDoubleClick(e.mapX, e.mapY);
                        break;

                    case 1:
                        break;
                    }
                }
                break;

            default:
                break;
            }
        }
Пример #7
0
        //=======================================================================
        /*
        private void gridView1_RowCellClick(object sender, DevExpress.XtraGrid.Views.Grid.RowCellClickEventArgs e)
        {
            switch (select())
            {
                case "2015年7月25日采集坐标点":
                    axMapControl1.ClearLayers();
                    axMapControl1.AddShapeFile(@"G:\数据库\实验数据", "2015年7月25日采集坐标点");
                    break;
                case "2015年7月26日采集坐标点":
                    axMapControl1.ClearLayers();
                    axMapControl1.AddShapeFile(@"G:\数据库\实验数据", "2015年7月26日采集坐标点");
                    break;
                case "2015年7月27日采集坐标点":
                    axMapControl1.ClearLayers();
                    axMapControl1.AddShapeFile(@"G:\数据库\实验数据", "2015年7月27日采集坐标点");
                    break;
                case "矿区1":
                    axMapControl1.ClearLayers();
                    axMapControl1.AddShapeFile(@"G:\数据库\实验数据", "矿区1");
                    break;
                case "矿区2":
                    axMapControl1.ClearLayers();
                    axMapControl1.AddShapeFile(@"G:\数据库\实验数据", "矿区2");
                    break;
                case "矿区3":
                    axMapControl1.ClearLayers();
                    axMapControl1.AddShapeFile(@"G:\数据库\实验数据", "矿区3");
                    break;
                case "矿区4":
                    axMapControl1.ClearLayers();
                    axMapControl1.AddShapeFile(@"G:\数据库\实验数据", "矿区4");
                    break;
                case "模拟矿区坐标点":
                    axMapControl1.ClearLayers();
                    axMapControl1.AddShapeFile(@"G:\数据库\实验数据", "模拟矿区坐标点");
                    break;
                case "坐标点":
                    axMapControl1.ClearLayers();
                    axMapControl1.AddShapeFile(@"G:\数据库\实验数据", "坐标点");
                    break;
                default:
                    break;

            }
        }
        private string select()
        {
            int selectedHandle;
            selectedHandle = this.gridView1.GetSelectedRows()[0];
            return this.gridView1.GetRowCellValue(selectedHandle, "矿区坐标文件").ToString();
        }*/
        private void axMapControl1_OnDoubleClick(object sender, IMapControlEvents2_OnDoubleClickEvent e)
        {
            if (attribute)
            {
                attribute = false;
            }
        }
 private void axMapControl1_OnDoubleClick(object sender, IMapControlEvents2_OnDoubleClickEvent e)    //图形画完后会双击
 {
     button1_Click(button1, new EventArgs());
 }
Пример #9
0
 /// <summary>
 /// 双击结束编辑
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 void mapControl_OnDoubleClick(object sender, IMapControlEvents2_OnDoubleClickEvent e)
 {
     ReleaseCommond();
     endEdit();
     RegistCommondExcutedEvent();
 }
Пример #10
0
 private void axMapControlMainMap_OnDoubleClick(object sender, IMapControlEvents2_OnDoubleClickEvent e)//双击省图的选中要素追溯其包括的县级图斑,或者双击县级数据库中的图斑,追溯其对应的省级图斑
 {
     //if (axMapControlMainMap.LayerCount == 0) return;
 }