/// <summary>
        /// 查询完毕回调
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void NextPageSelectCallback(object sender, UploadStringCompletedEventArgs e)
        {
            CLayerSelectAndGetAtt selRlt = activeLayer.OnLayerSelectAndGetAtt(e);
            TabItem  item;
            string   name;
            DataGrid grid;

            for (int k = 0; k < selRlt.Count.Length; k++)
            {
                for (int i = 0; i < selRlt.Count[k].Length; i++)
                {
                    if (selRlt.Count[k][i] > 0 && selRlt.AttDS[k].attTables != null && selRlt.AttDS[k].attTables[i].Rows != null)
                    {
                        name = activeLayer.LayerObj.LayerAccessInfo[k].LayerInfoList[i].LayerDataName;
                        //if (this.FindName(name) == null)
                        //{
                        //    item = new TabItem()
                        //    {
                        //        Header = name,
                        //        Name = name
                        //    };
                        //    grid = new DataGrid()
                        //    {
                        //        Name = "datagrid" + name + "_" + k + "_" + i,
                        //        Height = 221,
                        //        Width = 493,
                        //        AutoGenerateColumns = false,
                        //        IsReadOnly = true,
                        //        Tag = new TmpInfo() { LayerIndex = i, GDBIndex = k }
                        //    };
                        //    grid.MouseLeftButtonUp += new MouseButtonEventHandler(DataGrid_MouseLeftButtonUp);
                        //    item.Content = grid;
                        //    tabControl1.Items.Add(item);
                        //}
                        //else
                        {
                            item = this.FindName(name) as TabItem;
                            grid = item.Content as DataGrid;
                            grid.Columns.Clear();
                            grid.ItemsSource = null;
                        }
                        List <string> addColumnlHeadArr = new List <string>();
                        addColumnlHeadArr.Add("FID");
                        string[][] arr = new string[/*selRlt.Count[0][i]*/ selRlt.AttDS[k].attTables[i].Rows.Length + 1][];
                        arr[0] = selRlt.AttDS[k].attTables[i].Columns.FldName;

                        List <string[]> addColumnlContentArr = new List <string[]>();
                        string[]        fidArr = new string[selRlt.AttDS[k].attTables[i].Rows.Length];
                        for (int j = 0; j < selRlt.AttDS[k].attTables[i].Rows.Length; j++)
                        {
                            fidArr[j]  = selRlt.AttDS[k].attTables[i].Rows[j].FID.ToString();
                            arr[j + 1] = selRlt.AttDS[k].attTables[i].Rows[j].Values;
                        }
                        addColumnlContentArr.Add(fidArr);
                        BindClass bingclass = new BindClass();
                        bingclass.ColumnDisplay(grid, arr, addColumnlHeadArr, addColumnlContentArr);
                    }
                }
            }
        }
        private void setFeature(object sender, UploadStringCompletedEventArgs e)
        {
            CLayerSelectAndGetAtt obj = this.IMSCatalog.ActiveLayerObj.OnLayerSelectAndGetAtt(e);

            if (obj == null)
            {
                MessageBox.Show("未获取到要素");
                this.m_graphicsLayer.DrawingType         = DrawingType.Point;
                this.m_graphicsLayer.DrawingOverCallback = new DrawingEventHandler(Drawpoint_callback);
                return;
            }
            CAttDataTable curRltTable = obj.AttDS[this.IMSCatalog.ActiveLayerObj.ActiveGdbIndex].attTables[this.IMSCatalog.ActiveLayerObj.ActiveLayerIndex];

            if (obj.AttDS[this.IMSCatalog.ActiveLayerObj.ActiveGdbIndex].attTables[this.IMSCatalog.ActiveLayerObj.ActiveLayerIndex] != null)
            {
                CAttDataRow[] curRltRows = obj.AttDS[this.IMSCatalog.ActiveLayerObj.ActiveGdbIndex].attTables[this.IMSCatalog.ActiveLayerObj.ActiveLayerIndex].Rows;
                if (curRltRows == null)
                {
                    MessageBox.Show("未获取到要素");
                    this.m_graphicsLayer.DrawingType         = DrawingType.Point;
                    this.m_graphicsLayer.DrawingOverCallback = new DrawingEventHandler(Drawpoint_callback);
                    return;
                }
                CAttDataRow   row    = curRltTable.Rows[0] as CAttDataRow;
                CLayerGetByID getGeo = new CLayerGetByID();
                getGeo.FeatureID  = row.FID;
                getGeo.GdbIndex   = this.IMSCatalog.ActiveLayerObj.ActiveGdbIndex;
                getGeo.LayerIndex = this.IMSCatalog.ActiveLayerObj.ActiveLayerIndex;
                this.IMSCatalog.ActiveLayerObj.GetGeomByFID(getGeo, flashFeature);
            }
            else
            {
                MessageBox.Show("未获取到要素");
                this.m_graphicsLayer.DrawingType         = DrawingType.Point;
                this.m_graphicsLayer.DrawingOverCallback = new DrawingEventHandler(Drawpoint_callback);
            }
        }
        /// <summary>
        /// 查询完毕回调
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        public void SelectCallback(object sender, UploadStringCompletedEventArgs e)
        {
            //if (activeLayer != null && !activeLayer.Equals(m_catalog.ActiveLayerObj))
            //{//不是同一个图层,清除原来的结果
            //    tabControl1.Items.Clear();
            //}

            dataPager1.DataContext = null;
            tabControl1.Items.Clear();
            if (activeLayer != null)
            {
            }
            pageSize = activeLayer.GetPageSize();
            CLayerSelectAndGetAtt selRlt = this.activeLayer.OnLayerSelectAndGetAtt(e);


            _lastSelRlt = selRlt;
            TabItem  item;
            string   name;
            DataGrid grid     = null;
            int      maxCount = 0;

            if (selRlt.Count == null)
            {
                return;
            }
            for (int k = 0; k < selRlt.Count.Length; k++)        //GDB
            {
                for (int i = 0; i < selRlt.Count[k].Length; i++) //层
                {
                    if (selRlt.Count[k][i] > 0 && selRlt.AttDS[k].attTables != null && selRlt.AttDS[k].attTables[i].Rows != null)
                    {
                        name = activeLayer.LayerObj.LayerAccessInfo[k].LayerInfoList[i].LayerDataName;
                        if (this.FindName(name) == null)
                        {
                            item = new TabItem()
                            {
                                Header = name,
                                Name   = name
                            };
                            grid = new DataGrid()
                            {
                                Name   = "datagrid" + name + "_" + k + "_" + i,
                                Height = 221,
                                Width  = 493,
                                AutoGenerateColumns = false,
                                IsReadOnly          = true,
                                Tag = new TmpInfo()
                                {
                                    LayerIndex = i, GDBIndex = k
                                }
                            };
                            grid.MouseLeftButtonUp += new MouseButtonEventHandler(DataGrid_MouseLeftButtonUp);
                            grid.LoadingRow        += new EventHandler <DataGridRowEventArgs>(DataGrid_LoadingRow);
                            item.Content            = grid;
                            if (ContextMenuService.GetContextMenu(grid) == null)
                            {
                                ContextMenu contextMenu = GetContexMenu(k, i);
                                ContextMenuService.SetContextMenu(grid, contextMenu);
                            }
                            tabControl1.Items.Add(item);
                        }
                        else
                        {
                            item = this.FindName(name) as TabItem;
                            grid = item.Content as DataGrid;
                            grid.Columns.Clear();
                            grid.ItemsSource = null;
                        }
                        List <string> addColumnlHeadArr = new List <string>();
                        addColumnlHeadArr.Add("FID");
                        string[][] arr = new string[/*selRlt.Count[0][i]*/ selRlt.AttDS[k].attTables[i].Rows.Length + 1][];
                        arr[0] = selRlt.AttDS[k].attTables[i].Columns.FldName;

                        List <string[]> addColumnlContentArr = new List <string[]>();
                        string[]        fidArr = new string[selRlt.AttDS[k].attTables[i].Rows.Length];
                        for (int j = 0; j < selRlt.AttDS[k].attTables[i].Rows.Length; j++)
                        {
                            fidArr[j]  = selRlt.AttDS[k].attTables[i].Rows[j].FID.ToString();
                            arr[j + 1] = selRlt.AttDS[k].attTables[i].Rows[j].Values;
                        }
                        addColumnlContentArr.Add(fidArr);
                        if (maxCount < selRlt.Count[k][i])
                        {
                            maxCount = selRlt.Count[k][i];
                        }
                        BindClass bingclass = new BindClass();
                        dataPager1.DataContext = new PagedCollectionView(bingclass.ColumnDisplay(grid, arr, addColumnlHeadArr, addColumnlContentArr));
                        item.IsSelected        = true;
                    }
                }
            }
            if (maxCount > 0)
            {
                dataPager1.PageSize          = (int)Math.Ceiling(Convert.ToDouble(pageSize * pageSize) / maxCount);
                dataPager1.PageIndexChanged += new EventHandler <EventArgs>(dataPager1_PageIndexChanged);
            }
            if (tabControl1.Items.Count <= 0) //&& grid != null && grid.ItemsSource == null)
            // m_graphicsLayer.MapContainer.SetErrorText("没有符合条件的数据,请重新操作!");
            {
                MessageBox.Show("没有查询到结果,请更换条件后重试!", "提示", MessageBoxButton.OK);
            }
            else
            {
                this.Show();
            }
        }