예제 #1
0
        private void button6_Click(object sender, EventArgs e)
        {
            IGxDialog                 dlg     = new GxDialogClass();
            IGxObjectFilter           filter1 = new GxFilterFeatureClassesClass();
            IGxObjectFilter           filter2 = new GxFilterAnnotationFeatureClassesClass();
            IGxObjectFilterCollection filters = dlg as IGxObjectFilterCollection;

            filters.AddFilter(filter1, true);
            filters.AddFilter(filter2, false);
            IEnumGxObject selection;

            if (dlg.DoModalOpen(this.Handle.ToInt32(), out selection))
            {
                IGxObject gobj = selection.Next();
                if (gobj != null)
                {
                    this.tbxDataSource.Text = gobj.FullName;
                    m_fcName = gobj.InternalObjectName;
                    this.tbxCacheName.Text = gobj.BaseName;
                }
            }
        }
예제 #2
0
        /// <summary>
        /// 打开源图层
        /// </summary>
        /// <param name="path">路径</param>
        /// <returns></returns>
        public static IFeatureClass OpenSourceLayer(out string path)
        {
            IGxDialog dlg = new GxDialog();

            IGxObjectFilter pGxFilter = new GxFilterFeatureClassesClass();

            dlg.ObjectFilter     = pGxFilter;
            dlg.Title            = "添加源图层";
            dlg.ButtonCaption    = "添加";
            dlg.AllowMultiSelect = false;

            IEnumGxObject pEnumGxObject;

            dlg.DoModalOpen(0, out pEnumGxObject);
            if (pEnumGxObject != null)
            {
                pEnumGxObject.Reset();
                IGxObject gxObj;

                while ((gxObj = pEnumGxObject.Next()) != null)
                {
                    if (gxObj is IGxDataset)
                    {
                        IGxDataset gxDataset = gxObj as IGxDataset;
                        IDataset   pDataset  = gxDataset.Dataset;
                        if (pDataset.Type == esriDatasetType.esriDTFeatureClass)
                        {
                            IFeatureClass pIFeatureClass = pDataset as IFeatureClass;
                            path = gxObj.FullName;
                            return(pIFeatureClass);
                        }
                    }
                }
            }
            path = string.Empty;
            return(null);
        }
예제 #3
0
 /// <summary>
 /// Opens a dialog so the user can select a feature class containing previously transformed
 /// benchmarks.
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void benchmarkButton_Click(object sender, EventArgs e)
 {
     try
     {
         IGxObjectFilter           featureClassFilter = new GxFilterFeatureClassesClass();
         IGxDialog                 dlg     = new GxDialogClass();
         IGxObjectFilterCollection filters = (IGxObjectFilterCollection)dlg;
         filters.AddFilter(featureClassFilter, true);
         dlg.Title         = "Select the feature class containing previously transformed benchmarks";
         dlg.ButtonCaption = "Select";
         IEnumGxObject objects = null;
         if (dlg.DoModalOpen(0, out objects))
         {
             IGxObject obj = objects.Next();
             _benchmarkName        = obj.InternalObjectName;
             benchmarkTextBox.Text = obj.Name;
             EnableSave();
         }
     }
     catch (Exception ex)
     {
         ShowError(ex.Message);
     }
 }
예제 #4
0
        private void button6_Click(object sender, EventArgs e)
        {
            IGxDialog dlg = new GxDialogClass();
            IGxObjectFilter filter1 = new GxFilterFeatureClassesClass();
            IGxObjectFilter filter2 = new GxFilterAnnotationFeatureClassesClass();
            IGxObjectFilterCollection filters = dlg as IGxObjectFilterCollection;
            filters.AddFilter(filter1,true);
            filters.AddFilter(filter2,false);
            IEnumGxObject selection ;
            if(dlg.DoModalOpen(this.Handle.ToInt32(), out selection))
            {
                IGxObject gobj = selection.Next();
                if(gobj!=null)
                {
                    this.tbxDataSource.Text = gobj.FullName;
                    m_fcName = gobj.InternalObjectName;
                    this.tbxCacheName.Text = gobj.BaseName;
                }
            }

        }