public static JObject getImportBtnItems(CswNbtResources CswNbtResources) { JObject ImportableNodeTypes = new JObject(); Collection <CswEnumNbtObjectClass> MaterialPropSetMembers = CswNbtPropertySetMaterial.Members(); foreach (CswEnumNbtObjectClass ObjectClassName in MaterialPropSetMembers) { CswNbtMetaDataObjectClass ObjectClass = CswNbtResources.MetaData.getObjectClass(ObjectClassName); foreach (CswNbtMetaDataNodeType CurrentNT in ObjectClass.getNodeTypes()) { CswNbtMetaDataNodeTypeProp IsConstituentNTP = CurrentNT.getNodeTypePropByObjectClassProp(CswNbtPropertySetMaterial.PropertyName.IsConstituent); if (IsConstituentNTP.HasDefaultValue() && CswEnumTristate.False == IsConstituentNTP.getDefaultValue(false).AsLogical.Checked) { JObject NodeType = new JObject(); ImportableNodeTypes[CurrentNT.NodeTypeName] = NodeType; NodeType["nodetypename"] = CurrentNT.NodeTypeName; NodeType["nodetypeid"] = CurrentNT.NodeTypeId.ToString(); NodeType["iconfilename"] = CswNbtMetaDataObjectClass.IconPrefix16 + CurrentNT.IconFileName; NodeType["objclass"] = ObjectClassName.ToString(); } } } return(ImportableNodeTypes); }//getImportBtnItems()
private void setupGridColumns(DataSet DS, CswNbtView View) { _Grid.Columns.Clear(); // Edit column GridBoundColumn EditColumn = new GridBoundColumn(); EditColumn.UniqueName = "EditColumn"; EditColumn.HeaderText = "Edit"; EditColumn.DataField = "Edit"; EditColumn.Display = ShowActionColumns; _Grid.Columns.Add(EditColumn); // Node column GridBoundColumn NodeNameColumn = new GridBoundColumn(); NodeNameColumn.UniqueName = "NodeName"; NodeNameColumn.HeaderText = "Node Name"; NodeNameColumn.DataField = "NodeName"; // BZ 6704 NodeNameColumn.Visible = false; NodeNameColumn.Display = false; _Grid.Columns.Add(NodeNameColumn); // NodeKey column GridBoundColumn NodeKeyColumn = new GridBoundColumn(); NodeKeyColumn.UniqueName = "NodeKey"; NodeKeyColumn.HeaderText = "NodeKey"; NodeKeyColumn.DataField = "NodeKey"; NodeKeyColumn.Display = false; _Grid.Columns.Add(NodeKeyColumn); foreach (DataTable Table in DS.Tables) { foreach (DataColumn Column in Table.Columns) { string ColumnName = Column.ColumnName; if (ColumnName.Length > PropColumnPrefix.Length && ColumnName.Substring(0, PropColumnPrefix.Length) == PropColumnPrefix) { string NoPrefixColumnName = ColumnName.Substring(PropColumnPrefix.Length); //Int32 CurrentNodeTypePropId = CswConvert.ToInt32( NoPrefixColumnName.Substring( 0, NoPrefixColumnName.IndexOf( '_' ) ) ); string RealColumnName = CswTools.XmlRealAttributeName(NoPrefixColumnName); //.Substring( NoPrefixColumnName.IndexOf( '_' ) + 1 ) ); //CswNbtMetaDataNodeTypeProp CurrentNodeTypeProp = _CswNbtResources.MetaData.getNodeTypeProp( CurrentNodeTypePropId ); //CswNbtViewProperty CurrentViewProp = View.FindPropertyById( CswNbtPropType.NodeTypePropId, CurrentNodeTypePropId ); CswNbtViewProperty CurrentViewProp = View.findPropertyByName(RealColumnName); //if( CurrentViewProp == null ) // CurrentViewProp = View.FindPropertyByName( CurrentNodeTypeProp.PropName ); CswEnumNbtFieldType ColFieldType = CswNbtResources.UnknownEnum; if (CurrentViewProp != null) { if (((CswNbtViewRelationship)CurrentViewProp.Parent).SecondType == CswEnumNbtViewRelatedIdType.NodeTypeId) { CswNbtMetaDataNodeType CurrentNT = _CswNbtResources.MetaData.getNodeType(((CswNbtViewRelationship)CurrentViewProp.Parent).SecondId); CswNbtMetaDataNodeTypeProp CurrentNTP = CurrentNT.getNodeTypeProp(RealColumnName); if (CurrentNTP != null) { ColFieldType = CurrentNTP.getFieldTypeValue(); } } else if (((CswNbtViewRelationship)CurrentViewProp.Parent).SecondType == CswEnumNbtViewRelatedIdType.ObjectClassId) { CswNbtMetaDataObjectClass CurrentOC = _CswNbtResources.MetaData.getObjectClass(((CswNbtViewRelationship)CurrentViewProp.Parent).SecondId); foreach (CswNbtMetaDataNodeType CurrentNT in CurrentOC.getNodeTypes()) { CswNbtMetaDataNodeTypeProp CurrentNTP = CurrentNT.getNodeTypeProp(RealColumnName); if (CurrentNTP != null) { ColFieldType = CurrentNTP.getFieldTypeValue(); } } } } GridBoundColumn thisColumn = null; //switch( CurrentNodeTypeProp.FieldType.FieldType ) switch (ColFieldType) { case CswEnumNbtFieldType.DateTime: thisColumn = new GridDateTimeColumn(); thisColumn.DataFormatString = "{0:M/d/yyyy}"; thisColumn.DataType = typeof(DateTime); break; //case CswEnumNbtFieldType.Time: // thisColumn = new GridDateTimeColumn(); // thisColumn.DataFormatString = "{0:H:mm:ss}"; // thisColumn.DataType = typeof( DateTime ); // break; default: thisColumn = new GridBoundColumn(); break; } thisColumn.UniqueName = ColumnName; thisColumn.HeaderText = RealColumnName; thisColumn.DataField = ColumnName; if (CurrentViewProp != null && CurrentViewProp.Width != Int32.MinValue) { thisColumn.HeaderStyle.Width = Unit.Parse((CswConvert.ToInt32(CurrentViewProp.Width * 7)).ToString() + "px"); // average pixel width per character } //thisColumn.OrderIndex = CurrentViewProp.Order; //Telerik.Web.UI.GridTableView GTV = new GridTableView( _Grid ); if (CurrentViewProp != null && CurrentViewProp.Order > 0 && _Grid.Columns.Count >= CurrentViewProp.Order) { _Grid.Columns.AddAt(CurrentViewProp.Order, thisColumn); } else { _Grid.Columns.Add(thisColumn); } } } } // Delete column GridBoundColumn DeleteColumn = new GridBoundColumn(); DeleteColumn.UniqueName = "DeleteColumn"; DeleteColumn.HeaderText = "Delete"; DeleteColumn.DataField = "Delete"; DeleteColumn.Display = ShowActionColumns; _Grid.Columns.Add(DeleteColumn); } // setupGridColumns()