private void NichtMehrBenoetigteAttributEditFelderLoeschen() { if (this._attributEditFelder == null) { return; } int num = this._attribute != null ? this._attribute.Count : 0; while (this._attributEditFelder.Count > num) { ucXMLEditAttribut ucXmlEditAttribut = (ucXMLEditAttribut)this._attributEditFelder[this._attributEditFelder.Count - 1]; this._attributEditFelder.Remove((object)ucXmlEditAttribut); ucXmlEditAttribut.Dispose(); } }
public void AttributeAnzeigen() { this._attribute = (List <DTDAttribut>)null; this.lblFehler.Visible = false; if (this._xmlEditor != null && this._xmlEditor.RootNode != null && this._xmlEditor.CursorRoh.StartPos.Equals(this._xmlEditor.CursorRoh.EndPos)) { int num1 = 5; int num2 = num1; XmlNode xmlNode; switch (this._xmlEditor.CursorRoh.StartPos.PosAmNode) { case XMLCursorPositionen.CursorVorDemNode: case XMLCursorPositionen.CursorHinterDemNode: xmlNode = this._xmlEditor.CursorRoh.StartPos.AktNode.ParentNode; break; case XMLCursorPositionen.CursorAufNodeSelbstVorderesTag: case XMLCursorPositionen.CursorAufNodeSelbstHinteresTag: case XMLCursorPositionen.CursorInDemLeeremNode: xmlNode = this._xmlEditor.CursorRoh.StartPos.AktNode; break; case XMLCursorPositionen.CursorInnerhalbDesTextNodes: xmlNode = this._xmlEditor.CursorRoh.StartPos.AktNode; break; default: xmlNode = (XmlNode)null; break; } while (xmlNode is XmlText) { xmlNode = xmlNode.ParentNode; } if (xmlNode != null) { DTDElement dtdElement = (DTDElement)null; try { dtdElement = this._xmlEditor.Regelwerk.DTD.DTDElementByName(xmlNode.Name, true); } catch (DTD.XMLUnknownElementException ex) { Debugger.GlobalDebugger.Protokolliere(string.Format("unknown element {0} in {1}->{2}", (object)ex.ElementName, (object)this.Name, (object)"AttributeNeuAnzeigen")); this.lblFehler.Text = string.Format("unknown element '{0}'", (object)ex.ElementName); this.lblFehler.Visible = true; } if (dtdElement != null) { this._attribute = dtdElement.Attribute; if (this._attribute.Count > 0) { for (int index = 0; index < this._attribute.Count; ++index) { ucXMLEditAttribut ucXmlEditAttribut; if (index < this._attributEditFelder.Count) { ucXmlEditAttribut = (ucXMLEditAttribut)this._attributEditFelder[index]; } else { ucXmlEditAttribut = new ucXMLEditAttribut(); ucXmlEditAttribut.Parent = (Control)this; ucXmlEditAttribut.Top = num2; ucXmlEditAttribut.Left = num1; ucXmlEditAttribut.Width = 10; ucXmlEditAttribut.Visible = true; this._attributEditFelder.Add((object)ucXmlEditAttribut); } ucXmlEditAttribut.XMLEditor = this._xmlEditor; ucXmlEditAttribut.Node = xmlNode; ucXmlEditAttribut.Attribut = this._attribute[index]; ucXmlEditAttribut.NeuZeichnen(); num2 += ucXmlEditAttribut.Height; this.NichtMehrBenoetigteAttributEditFelderLoeschen(); foreach (Control control in this._attributEditFelder) { control.Width = this.ClientSize.Width - num1 * 2; } } } } } } this.NichtMehrBenoetigteAttributEditFelderLoeschen(); }