public DataTable MakeDomainTable(String codedvaluedomain)
{
Utilities utils = new Utilities();
DataTable domaintable = new DataTable("domaintable");
DataColumn column;
DataColumn column2;
DataRow row;
column = new DataColumn();
column.DataType = System.Type.GetType("System.String");
column.ColumnName = "DomainName";
column.Caption = "name";
domaintable.Columns.Add(column);
column2 = new DataColumn();
column2.DataType = System.Type.GetType("System.String");
column2.ColumnName = "DomainValue";
column2.Caption = "value";
domaintable.Columns.Add(column2);
IWorkspace ws = (IWorkspace)ArcMap.Editor.EditWorkspace;
if (ws == null)
{
ws = utils.OpenSDEWorkspace("stuff for sde connection");
}
IWorkspaceDomains domains = (IWorkspaceDomains)ws;
object[] domainobject = null;
IEnumDomain domainEnum = domains.Domains;
IDomain domain = domainEnum.Next();
String name = "";
while (domain != null)
{
name = domain.Name;
domain = domainEnum.Next();
if (name.Equals(codedvaluedomain))
{
break;
}
}
ICodedValueDomain codeddomain = new CodedValueDomainClass();
codeddomain = domains.get_DomainByName(name) as ICodedValueDomain;
domainobject = new object[codeddomain.CodeCount];
for (int a = 0; a < codeddomain.CodeCount; a++)
{
object domainvalue = codeddomain.get_Value(a);
row = domaintable.NewRow();
row["DomainName"] = codeddomain.get_Name(a);
row["DomainValue"] = codeddomain.get_Value(a);
domaintable.Rows.Add(row);
}
return domaintable;DataTable manufacarray = DomainControl.manufactrdomains;
this.hydrantmanufactcombo.ItemsSource = ((IListSource)manufacarray).GetList();
this.hydrantmanufactcombo.SelectedValuePath = "DomainValue";
this.hydrantmanufactcombo.DisplayMemberPath = "DomainName";
if (featutils.HasSelectedFeatures(focusmap))
{
this.hydrantmanufactcombo.SelectedIndex =
Convert.ToInt32(featutils.UpdateDomainValue(focusmap, "MAKE AND MODEL", currentfc, "make"));
}
else
{
this.hydrantmanufactcombo.SelectedIndex = 0;
}