tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
6
ZUGRIFFE
1247
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von Maximus
    Maximus Maximus ist offline Mitglied Gold
    Registriert seit
    May 2002
    Ort
    Hessen
    Beiträge
    201
    Hallo,

    ich stoße in letzter Zeit immer mehr bei verschiedenn Programmen auf einen Windows-Look in dem die Forms einen blauen Touch (Leisten, Buttons) haben (siehe die beiden Bilder in Anlage)
    Wie kann ich das in C# machen ? Benötige ich dafür etwas Extra oder ist das eine reine Programmiersache?

    Bin für jede Hilfe dankbar.

    Gruss Maximus
    Miniaturansicht angehängter Grafiken Miniaturansicht angehängter Grafiken Modifizierte Windows Forms-bild1.jpg  
    Angehängte Grafiken Angehängte Grafiken  
     
    Was Du in anderen entzünden willst, muß in Dir selbst brennen!

  2. #2
    Avatar von X509
    X509 X509 ist offline Mitglied
    Registriert seit
    May 2005
    Beiträge
    20
    Hi Maximus!

    Imho handelt es sich dabei um Controls von Drittanbietern - z.B. Infragistics oder DevExpress.

    Du kannst in C# auch eigene Controls / UserControls entwickeln - hier solltest du aber den Aufwand/Nutzen abschätzen.

    Es besteht auch die Möglichkeit, den Paint() Event eines Controls abzufangen um über das Graphics-Objekt eigene Änderungen zu zeichnen.

    Evtl. bringt .NET 2005 Erweiterungen in dieser Hinsicht mit?!
    Geändert von X509 (24.05.05 um 12:17 Uhr)
     

  3. #3
    Avatar von Norbert Eder
    Norbert Eder Norbert Eder ist offline Mitglied Diamant
    Registriert seit
    Feb 2004
    Ort
    Österreich / Graz
    Beiträge
    5.137
    Blog-Einträge
    51
    Nein, hier werden eigens entwickelte Controls eingesetzt. Du kannst ja von System.Windows.Forms.UserControl ableiten (oder von einem bestehenden) und dein Control in dem von dir gewünschten Look & Feel bauen. Kostet natürlich ein wenig an Zeit, aber dafür schaut die Anwendung dann so aus, wie du es willst.

    Eine andere Möglichkeit wäre, dass du Application.EnableVisualStyles() verwendest, dann übernimmt deine Anwendung das eingestellt Windows-Theme.
     

  4. #4
    Avatar von Christian Kusmanow
    Christian Kusmanow Christian Kusmanow ist offline Mitglied Diamant
    Registriert seit
    Aug 2004
    Ort
    Aachen (NRW)
    Beiträge
    2.208
    Blog-Einträge
    15
    Zitat Zitat von Norbert Eder
    Nein, hier werden eigens entwickelte Controls eingesetzt.
    Ich würd sagen das einzige was selber gezeichnet ist, sind die Buttons die zu sehen sind.
    Zitat Zitat von Maximus
    stoße in letzter Zeit immer mehr bei verschiedenn Programmen auf einen Windows-Look in dem die Forms einen blauen Touch (Leisten, Buttons) haben
    Skins für Programm - 3. Post von mir
    Zitat Zitat von Norbert Eder
    Du kannst ja von System.Windows.Forms.UserControl ableiten (oder von einem bestehenden) und dein Control in dem von dir gewünschten Look & Feel bauen. Kostet natürlich ein wenig an Zeit, aber dafür schaut die Anwendung dann so aus, wie du es willst.
    Skins für Programm - 6. Post von Alex

    MfG, cosmo
     
    MfG,
    Christian

    Wer sein Problem definiert, hat es schon halb gelöst!

    Bitte markiert eure Themen als erledigt. Sonst macht so ein Forum als Nachschlagewerk keinen Sinn.

    The Code Project! - C# Programming | C# / VB.NET Pendants

    Regeln + Netiquette

    Liebe FIAEs, verlasst euch nicht auf das was in der Berufsschule "vermittelt" wird
    und vor allem nicht auf das, was euch die IHK dazu erzählt!
    Die haben so viel Ahnung von dem Gewerk, wie der Bundestag vom Haushalt...

  5. #5
    Avatar von Norbert Eder
    Norbert Eder Norbert Eder ist offline Mitglied Diamant
    Registriert seit
    Feb 2004
    Ort
    Österreich / Graz
    Beiträge
    5.137
    Blog-Einträge
    51
    Zitat Zitat von cosmochaosmaker
    Ich würd sagen das einzige was selber gezeichnet ist, sind die Buttons die zu sehen sind.
    Deswegen hab ich ja eben die Geschichte mit dem EnableVisualStyles dazugeschrieben :P
     

  6. #6
    Avatar von Shakie
    Shakie Shakie ist offline Mitglied Diamant
    Registriert seit
    May 2004
    Ort
    Europa
    Beiträge
    2.048
    EnableVisualStyles funktioniert bei mir nicht. Alles bleibt im "normalen" Style. Hat da jemand erfahrung mit? Ich hätte erwartet, dass wenigstens die Buttons ihren Style dem XP-Theme anpassen.
    Naja, SharpDevelop erstellt immerhin automatisch eine Manifest-Datei, welche den XP-Style aktiviert. Die funktioniert einwandfrei

    Edit: Hab's hinbekommen, nachdem ich diese Seite gefunden hatte.
    Und zwar muss man nach EnableVisualStyles noch ein Application.DoEvents aufrufen.....
    Geändert von Shakie (10.02.06 um 15:59 Uhr)
     
    hihi = -h²

  7. #7
    Avatar von Christian Kusmanow
    Christian Kusmanow Christian Kusmanow ist offline Mitglied Diamant
    Registriert seit
    Aug 2004
    Ort
    Aachen (NRW)
    Beiträge
    2.208
    Blog-Einträge
    15
    Nicht vergessen:

    Ihr müsst den FlatStyle eurer Controls auf System umstellen.

    Dieses Property existiert aber nur bei bestimmten Controls:
    ButtonBase.FlatStyle, GroupBox.FlatStyle, Label.FlatStyle

    Alle anderen Control die dieses property nicht besitzen,
    werden automatisch dem WindowsTheme angepasst.

    Und so muss der Programmstart aussehen:
    Code csharp:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    
    /// <summary>
    /// The main entry point for the application.
    /// </summary>
    [STAThread]
    static void Main() {
        try {
            Application.EnableVisualStyles();
            Application.DoEvents();
            Application.Run( new TuneClipperForm() );
        }
        catch ( Exception ex ){
            MessageBox.Show( ex.ToString(), string.Format( "{0} ({1})", ex.Source, ex.GetType().Name ) );
        }
    }
    MfG, cosmo

    //Edit: AAARRRGGGHHHH
     
    MfG,
    Christian

    Wer sein Problem definiert, hat es schon halb gelöst!

    Bitte markiert eure Themen als erledigt. Sonst macht so ein Forum als Nachschlagewerk keinen Sinn.

    The Code Project! - C# Programming | C# / VB.NET Pendants

    Regeln + Netiquette

    Liebe FIAEs, verlasst euch nicht auf das was in der Berufsschule "vermittelt" wird
    und vor allem nicht auf das, was euch die IHK dazu erzählt!
    Die haben so viel Ahnung von dem Gewerk, wie der Bundestag vom Haushalt...

Ähnliche Themen

  1. Antworten: 20
    Letzter Beitrag: 06.09.10, 14:31
  2. [c#]windows forms tut?
    Von davfighter im Forum .NET Windows Forms
    Antworten: 9
    Letzter Beitrag: 14.11.07, 12:07
  3. Windows Forms
    Von m-a-g im Forum VisualStudio & MFC
    Antworten: 1
    Letzter Beitrag: 25.09.07, 11:34
  4. Modifizierte Windows Forms
    Von Maximus im Forum C/C++
    Antworten: 2
    Letzter Beitrag: 24.05.05, 12:07
  5. [C++] & Windows Forms
    Von Mr.Undertaker im Forum C/C++
    Antworten: 2
    Letzter Beitrag: 24.10.02, 20:53