Solved! Go to Solution.
private ESRI.ArcGIS.Geometry.ISpatialReference3 pSR;
private void cmdSetReference_Click(System.Object sender, System.EventArgs e) {
ESRI.ArcGIS.CatalogUI.ISpatialReferenceDialog2 pSRDialog = new ESRI.ArcGIS.CatalogUI.SpatialReferenceDialog();
pSR = pSRDialog.DoModalCreate(false, false, false, My.ArcMap.Application.hWnd);
if ((pSR != null)) {
if (!pSR is ESRI.ArcGIS.Geometry.IGeographicCoordinateSystem2 & !pSR is ESRI.ArcGIS.Geometry.IProjectedCoordinateSystem5) {
System.Windows.Forms.MessageBox.Show("Please select a projected or geographic coordinate system. ", "Unknown Coordinate System", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Exclamation);
}
}
}
private void cmdSub_Click(object sender, EventArgs e)
{
string strdatabasePath = "C:\\" + @txtProject.Text + "\\Survey\\Data_Table\\" + @txtDatabase.Text + @txtSub.Text;
if (!Directory.Exists(strdatabasePath) == false)
{
MessageBox.Show("Destination Directory was not Found, Please Create the Directory First");
}
IWorkspaceFactory pWSF = new FileGDBWorkspaceFactoryClass();
Boolean blsWorkspace = pWSF.IsWorkspace("C:\\" + @txtProject.Text + "\\Survey\\GeoDatabase\\" + @txtDatabase.Text + "\\" + @txtDatabase.Text + ".gdb");
if (blsWorkspace == true)
{
IWorkspace pWorkspace = pWSF.OpenFromFile("C:\\" + @txtProject.Text + "\\Survey\\GeoDatabase\\" + @txtDatabase.Text + "\\" + @txtDatabase.Text + ".gdb", 0);
IFeatureWorkspace pfeatureWorkspace = (IFeatureWorkspace)pWorkspace;
IEnumDatasetName pEnumDatasetName = pWorkspace.get_DatasetNames(esriDatasetType.esriDTFeatureDataset);
IDatasetName pDatasetName = pEnumDatasetName.Next();
while (pDatasetName != null)
{
pEnumDatasetName = (IEnumDatasetName)pDatasetName;
string theDatasetName;
int theValue;
Boolean f = groupBox2.Focused;
int theVal = Convert.ToInt32(f);
while (pDatasetName == null)
{
theDatasetName = pDatasetName.Name;
if (theDatasetName == txtSub.Text)
{
theValue = 1;
pDatasetName = pEnumDatasetName.Next();
if (theValue != 1)
{
ISpatialReferenceDialog pSpaRefDlog = new SpatialReferenceDialogClass();
ISpatialReference m_SpaRef = pSpaRefDlog.DoModalCreate(true, true, true, theVal);
}
MessageBox.Show("FeatureDataset Created");
}
else
{
MessageBox.Show("No Spatial Reference Found, Feature Dataset was Not Created");
}
}
}
}
}
if (theValue != 1)
{
ISpatialReferenceDialog pSpaRefDlog = new SpatialReferenceDialogClass();
ISpatialReference m_SpaRef = pSpaRefDlog.DoModalCreate(true, true, true, theVal);
IName nameObj = pDatasetName as IName;
IDataset dataset = nameObj.Open() as IDataset;
IGeoDataset pGeoDataset = dataset as IGeoDataset;
IGeoDatasetSchemaEdit pGDsEdit = pGeoDataset as IGeoDatasetSchemaEdit;
pGDsEdit.AlterSpatialReference( m_SpaRef);
}