skins & vererbung

  • Hi,

    Ich versuche gerade herauszufinden, ob es eine Moeglichkeit gibt, Vererbung auch auf skin Definitionen anzuwenden ... mein Beispielproblem ist folgendes:

    Code
    public class StatGridView : GridView

    Im skin File hab ich folgende Definition:

    Code
    <asp:GridView runat="server" CssClass="stats"
        AllowPaging="True" AutoGenerateColumns="False" AllowSorting="True"
        ShowHeader="true">
        <HeaderStyle CssClass="header" />
        <FooterStyle CssClass="footer" />
        <AlternatingRowStyle CssClass="alt" />
        <SelectedRowStyle CssClass="selected" />
        <PagerSettings FirstPageText="First" LastPageText="Last" Mode="NumericFirstLast" Position="Bottom" />
    </asp:GridView>

    Wenn ich jetzt aber im aspx File folgendes definiere, dann ... wird die Definition fuer GridView komplett ignoriert und zB. wie wild AutoGeneratedColumns angezeigt:

    Code
    <crez:StatGridView ID="TeamSiBoxScoreGrid" DataSourceID="TeamSiBoxScoreDS" runat="server">
    </crez:StatGridView>

    Gibt es also eine Moeglichkeit, dass auch die Skins verstehen, dass StatGridView von GridView erbt und die Skin Definitionen nicht nur fuer GridView Elemente, sondern auch fuer StatGridView Elemente verwendet werden?

    Ansonst muss ich alles kopieren, was eine ziemlich "unakademische" Loesung ist ... *grmpf*

    *** Make it idiot proof, and someone will build a better idiot. ***

  • Ähm eine Vererbung hilft dir dabei gar nichts. Wie auch .. während die (aspx) Page geparst wird, werden erst zur Laufzeit den Properties der Klasse die entsprechenden Werte zugewiesen.

    Ich hoffe, das war irgendwie verständlich.

  • Ähm eine Vererbung hilft dir dabei gar nichts. Wie auch .. während die (aspx) Page geparst wird, werden erst zur Laufzeit den Properties der Klasse die entsprechenden Werte zugewiesen.

    Ich hoffe, das war irgendwie verständlich.


    nicht wirklich. ;) Die StatsGridView erbt ja von GridView ... wieso ist also die Idee, dass auch die Properties, die im Skin der GridView Klasse zugewiesen werden, an StatsGridView "vererbt"/weitergegeben/zugewiesen werden, so weit hergeholt?

    Ich kann verstehen, dass das so nicht funktioniert, aber an und fuer sich ist der Ansatz ja nicht bloed, oder?

    *** Make it idiot proof, and someone will build a better idiot. ***

  • Du hast zwar die Properties, Methods, etc. von der Oberklasse geerbt, aber die Werte werden erst beim Parsen der aspx Seite zugeordnet.

    Weist du der StatGridView irgendwelche Werte in Form von Metadaten (wie bei GridView) zu? .... Antwort: nein

  • Du hast zwar die Properties, Methods, etc. von der Oberklasse geerbt, aber die Werte werden erst beim Parsen der aspx Seite zugeordnet.

    Weist du der StatGridView irgendwelche Werte in Form von Metadaten (wie bei GridView) zu? .... Antwort: nein


    ich glaube, wir reden an einander vorbei ... trotzdem, danke.

    *** Make it idiot proof, and someone will build a better idiot. ***

  • Hm ich glaube, ich versteh jetzt was du meinst, aber da du in den skin Dateien die genaue Definition angeben mußt, für welche Controls das Layout definiert wird und es mMn keine Vererbung für Layout gibt, wird dir nichts anderes übrig bleiben, als Layoutdefinitionen für jedes Control (ev. redundant) zu definieren.

  • Hm ich glaube, ich versteh jetzt was du meinst, aber da du in den skin Dateien die genaue Definition angeben mußt, für welche Controls das Layout definiert wird und es mMn keine Vererbung für Layout gibt, wird dir nichts anderes übrig bleiben, als Layoutdefinitionen für jedes Control (ev. redundant) zu definieren.


    yup, jetzt sind wir am gleichen Dampfer ... der leider nicht schwimmen kann. ;)

    *** Make it idiot proof, and someone will build a better idiot. ***

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!