none
Panel oder PictureBox als Ersatz für Button RRS feed

  • Frage

  • Hallo allerseits,

    Ich möchte in einer Applikation alle Schaltflächen mit Panel oder PictureBox esetzen.
    Grund: Man kann die Buttons besser gestallten.

    Jetzt würde ich gerne wissen was performanter wäre, Panel oder PictureBox.
    Mit Schaltflächen meine ich halt alle möglichen. Auch wenn bsp. FormBorderStyle=None
    wäre gebe es halt rechts obendie 3 btn für min, max, und close. Dadurch wird der
    SizeGrip auch ausgeblendet und auch hierfür gebe es ein Panel oder PictureBox.
    Im großen und ganzen wären das ca. 10 Button's bzw. Panel's oder PictureBox's pro Form.
    Jetzt ist mir schon beim vergrößern der Form mitels Panel oder PictureBox aufgefallen
    das die ganze Applikation beim ziehen ruckelt ob nach dem Initialisieren die
    SetStyle-Eigenschaft (Double Buffering) gesetz wird. Auch wenn die Fom minimiert ist
    und danach wieder maximiert wird, baut sich die Form nur langsam auf. Damit meine ich
    die ganze Form ist weiss und die Controls weden nacheinander sichtbarer

    Das zweite Problem wäre, wenn ich die Form auf maximized setze überdeckt die Form auch
    die Startleiste von Windows.  Das will ich nicht, wie kann man das normal auf maximized
    setzen so das die Startleiste zu sehen ist. Muss das ausgerechnet werden und die größe
    so gestellt werden.

    Wäre für jde Hilfe sehr danbar.
    Lg
    String.Rise

    Montag, 11. Oktober 2010 06:09

Alle Antworten

  •  
    "String.Rise" schrieb
     > Ich möchte in einer Applikation alle Schaltflächen mit Panel oder
    > PictureBox esetzen.
    > Grund: Man kann die Buttons besser gestallten.
     
    Es wäre vielleicht sinnvolle einen eigenen Button zu entwerfen bzw.
    abzuleiten von Buttonbase - google.
     
    bzw. ein eigenes Control von Control ableiten.
     
     
    Samstag, 16. Oktober 2010 12:02
  • Hallo SR.,

    ja, Panel und PictureBox haben zuviel Funktionalität enthalten, die Du nicht benötigst.
    Also in Windows Forms besser zum Beispiel ein eigenes Control von "ButtonBase, IButtonControl" ableiten.
    Du musst auch berücksichtigen, dass es einen VisualStyleRendering gibt.
    Also z.B. ein Fading-Effekt bei MouseOver etc. mit Deaktivierungs-Rendering etc..
    Das kann "viel" Arbeit sein.

    Insofern - ich empfehle eh, sich mal mit WPF zu beschäftigen. In Deinem Fall könntest/solltest Du prüfen, auch ggf. komplett auf WPF umsteigen.
    Die Gestaltbarkeit der Controls ist dort zum einen sehr einfach und eben höchst flexibel und auch besser getrennt von den Funktionalität/Logik nebst Vektororientierung und sehr hilfreiche Designer-Tools, die einem das Gestalten eben deutlich vereinfachen.

     


    ciao Frank
    Samstag, 16. Oktober 2010 13:28