private void openToolStripMenuItem_Click(object sender, EventArgs e) { OpenFileDialog dialog = new OpenFileDialog(); dialog.Multiselect = true;//该值确定是否可以选择多个文件 dialog.Title = "请选择文件"; dialog.Filter = "ESRI Shapefile(*.shp)|*.shp|所有文件(*.*)|*.*"; if (dialog.ShowDialog() == System.Windows.Forms.DialogResult.OK) { string file = dialog.FileName; WEVectorLayer newLayer = WEIO.ReadLayer(file); newLayer.InitializeData(); newLayer.SelectDisplay(); AllLayer.Add(newLayer); weMapControl1.AllLayer = AllLayer; treeView1.Nodes.Clear(); foreach (var layer in AllLayer) { TreeNode node0_0 = new TreeNode(); node0_0.Text = layer.LayerName; node0_0.Checked = layer.Visible; treeView1.Nodes.Add(node0_0); } if (AllLayer.Count() != 0) { weMapControl1.FullExitence(); } } }
private void OKbtn_Click(object sender, EventArgs e) { if (txtName.Text == string.Empty) { _NewLayer = new WEPointLayer(); } else { switch (cmbType.SelectedIndex) { case 0: _NewLayer = new WEPointLayer(); break; case 1: _NewLayer = new WEPolylineLayer(); break; case 2: _NewLayer = new WEPolygonLayer(); break; } } if (txtName.Text.ToString().Length != 0) { _NewLayer.LayerName = txtName.Text.ToString(); } else { _NewLayer.LayerName = "default"; } this.DialogResult = DialogResult.OK; this.Close(); }
public void RepairData(WEVectorLayer layer) { Data = layer.GetDataTable(); this.dataGridView1.DataSource = Data; }
private void treeView1_DragDrop(object sender, DragEventArgs e) { string Moveid = "", Dropid = ""; TreeNode myNode = null; if (e.Data.GetDataPresent(typeof(TreeNode))) { //获得移动节点 myNode = (TreeNode)(e.Data.GetData(typeof(TreeNode))); //获得移动节点的NodeId Moveid = (string)myNode.Index.ToString(); } else { MessageBox.Show("error"); } //将树节点的位置计算成工作区坐标。 Position.X = e.X; Position.Y = e.Y; Position = treeView1.PointToClient(Position); TreeNode DragNode = myNode; WEVectorLayer DragLayer = AllLayer[myNode.Index]; AllLayer.RemoveAt(myNode.Index); myNode.Remove(); //treeView1.Nodes.Add(DragNode); TreeNode DropNode = this.treeView1.GetNodeAt(Position); //Dropid = (string)DropNode.Index.ToString(); if (DropNode == null) { treeView1.Nodes.Add(DragNode); AllLayer.Add(DragLayer); } else if (Convert.ToInt32((string)DropNode.Index.ToString()) == treeView1.Nodes.Count) { AllLayer.Insert(Convert.ToInt32((string)DropNode.Index.ToString()) - 1, DragLayer); treeView1.Nodes.Insert(Convert.ToInt32((string)DropNode.Index.ToString()) - 1, DragNode); } else { AllLayer.Insert(Convert.ToInt32((string)DropNode.Index.ToString()), DragLayer); treeView1.Nodes.Insert(Convert.ToInt32((string)DropNode.Index.ToString()), DragNode); } weMapControl1.Refresh(); /* * //检索目标节点 * TreeNode DropNode = this.treeView1.GetNodeAt(Position); * // 1.目标节点不是空。2.目标节点不是被拖拽接点的子节点。3.目标节点不是被拖拽节点本身 * if (DropNode != null && DropNode.Parent != myNode && DropNode != myNode) * { * //临时节点 * TreeNode tempNode = myNode; * // 将被拖拽节点从原来位置删除。 * myNode.Remove(); * // 在目标节点下增加被拖拽节点 * DropNode.Nodes.Add(tempNode); * //目标节点的NodeId值 * Dropid = (string)DropNode.Index.ToString(); * * * //数据库中更新移动节点的parentID * string strSQL; * strSQL = " update TTree set parentId =" + Dropid + " where NodeId = " + Moveid + " "; * SQLiteDBHelper db = new SQLiteDBHelper(ComPath); * int i = db.ExecuteNonQuery(strSQL, null); * if (i < 0) * { * MessageBox.Show("请正确拖动文件"); * } * * * } * // 如果目标节点不存在,即拖拽的位置不存在节点,那么就将被拖拽节点放在根节点之下 * if (DropNode == null) * { * * //parentId = 0 表示根节点 * string strSQL; * strSQL = " update TTree set parentId = 0 where NodeId = " + Moveid + " "; * SQLiteDBHelper db = new SQLiteDBHelper(ComPath); * int i = db.ExecuteNonQuery(strSQL, null); * * * } */ }