none
DefaultProperty und ContentProperty RRS feed

  • Frage

  • Schönen guten Morgen.

    Könnt ihr mir auf diesem Wege erklären, welche Funktion die beiden Attribute DefaultProperty und ContentProperty haben?

    Wozu werden sie gebraucht und was bewirken sie?

    Vielen Dank für's Bemühen vorweg ;-)

    Donnerstag, 21. Juni 2012 07:13

Alle Antworten

  • Hi Jan,

    von der anderen Post gehe ich mal aus das du ContentProperty verstanden hast.

    Mit dem DefaultProperty Attribut kannst du Bestimmen, welches Attribut bei einer Klasse Standard mäßig verwendet wird.

    Staat Label.Text = "Meine Text" würde dann Label = "MeinText" reichen.

    Hier noch mal eine weiter Link dazu:

    http://msdn.microsoft.com/en-us/library/az06zx4y%28v=vs.90%29.aspx

    Ich hab die Sachen jetzt nur Überflogen, aber ich denke da geht es um Sachen die aus VB6 übernommen worden sind.

    Microsoft Rät dazu es nicht zu benutzen.

    http://msdn.microsoft.com/en-us/library/371ww4fs%28v=vs.90%29.aspx

    MFG

    Björn

    Montag, 25. Juni 2012 21:30
  • an Francesco: richtig, ist der selbe Post, allerdings für die englische Leser ;) ich wusste es nicht besser als einen Doppelpost zu machen, sorry dafür...

    an Björn: Danke Dir für die Antwort. Also DefaultProperty ist tatsächlich verständlich. Allein durch die Bezeichnung des Propertys (eben default) liegt die Vermutung nahe, wofür es steht und wie es funktionieren könnte. Allerdings ist das bei dem ContentProperty genauso.

    Ich habe mit meinen Kollegen verschiedene Tests gemacht. ContentProperty lieferte immer das gewünschte Ergebnis, eben das der Content ohne explizite Angabe als Standart gesetzt wurde. DefaultProperty allerdings funktionierte (in diesem Zusammenhang) nicht, obwohl wir es da eher vermutet hätten.

    Ok, in den Infos von Microsoft wird geraten, Standarteigenschaften eher zu meiden und die Eigenschaften einer Klasse, Struktur usw. explizit zu Benennen und zu Setzen. Das mache ich allerdings immer, weil es tatsächlich die Lesbarkeit des Quellcodes erhöht. Aber was VB6 angeht so muss ich sagen, das wir in C# programmieren, und da hoffe ich mal, dass solche Dinge hoffentlich nicht von VB6 übernommen wurden.

    Hach ja es bleibt irgendwie ein Rätsel. Vllt muss sich doch mal Jemand äussern, der entscheident an der Entwicklung der beiden Properties anteil hatte ;)

    Ich Danke euch für die Antworten ;)


    Dienstag, 26. Juni 2012 07:20