[UPDATE 20.10.2020] - MetroSuite 2.0 - Holt euch den modernen Windows 10 Style.

    • Release
    • Closed Source

    Es gibt 1.336 Antworten in diesem Thema. Der letzte Beitrag () ist von AKP.

      Ich muss dir ehrlich sagen, ich hab mir bis dato nicht die Kompatibilität bezüglich .NET Core 5 angeschaut.
      Mir ist also nicht bewusst, wie genau das Ganze aussieht, wenn ich versuche das Projekt zu porten.
      Mfg: Gather
      Private Nachrichten bezüglich VB-Fragen werden Ignoriert!


      @TTX.exe
      Um deine Form zu einer MetroForm umzuwandeln erbe von MetroSuite.MetroForm
      (Public Class Form1: Inherits MetroSuite.MetroForm)

      Wenn du deiner Form spezielle Themes anwenden möchtest dann:

      VB.NET-Quellcode

      1. Dim myTheme as new MetroSuite.Extensions.Styles.Themes.TwitchTheme ' TwitchTheme ist nur ein von vielen Themes verfügbar in der MetroSuite.Extensions Library
      2. myTheme.ApplyTheme(Me)

      Diesen Code ambesten in deinem Form_Load hineinschreiben.

      Falls du Themes auf deiner MetroForm anwenden möchtest, beachte das:
      1. Du die MetroSuite.Extensions Library als Verweis hinzugefügt hast.
      2. Du von MetroSuite.MetroForm erbst.
      Wenn ich dir auf irgendeiner Art und Weise helfen konnte, drück doch bitte den "Hilfreich" Button :thumbup:

      Für VB.NET Entwickler: Option Strict On nicht vergessen!
      Für die MetroForm brauchst du die Extensions nicht. Ich hab noch vergessen zu erwähnen das du in dem Designer-Code deiner Form auch noch Inherits MetroSuite.MetroForm hinzufügen musst.
      (Wenn du bereits Imports MetroSuite in deinem Code hast, brauchst du natürlich nur Inherits MetroForm)

      Designer-Code Beispiel:

      VB.NET-Quellcode

      1. Imports MetroSuite
      2. <Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()>
      3. Partial Class Form1
      4. Inherits MetroForm

      Wenn ich dir auf irgendeiner Art und Weise helfen konnte, drück doch bitte den "Hilfreich" Button :thumbup:

      Für VB.NET Entwickler: Option Strict On nicht vergessen!
      Jetzt bin ich verwirrt, wo sehe ich denn bei WinForms einen Designer-Code?

      Public Class frm_options : Inherits MetroSuite.MetroForm für zu einder Fehlermeldunng:

      Schweregrad Code Beschreibung Projekt Datei Zeile Unterdrückungszustand
      Fehler BC30928 Die für die frm_options-Klasse festgelegte MetroForm-Basisklasse darf sich nicht von der Form-Basisklasse eines ihrer anderen partiellen Typen unterscheiden
      : NV Updater | Nvidia Driver Update Tool
      Du kannst in deinem Projektmappen-Explorer neben deiner Form auf einen kleinen Pfeil drücken, dort solltest du dann deinen Designer-Code sehen für diese Form.


      Sollte dies nicht der Fall sein, dann versuch mal alle Dateien anzuzeigen.
      Wenn ich dir auf irgendeiner Art und Weise helfen konnte, drück doch bitte den "Hilfreich" Button :thumbup:

      Für VB.NET Entwickler: Option Strict On nicht vergessen!
      Super Sache das hat geklappt :) jetzt muss ich nur noch rausfinden wie man maximieren verbietet 8o

      @Gather
      Wie bekommt man denn den maximieren Button weg? Finde irgendwie nichts in den Settings :huh:. Was mir aufgefallen ist, der MetroSwitch ist für meine Begriffe falsch gefärbt. Er ist z.B. blau wenn er deaktivert ist und grau wenn er aktiviert ist. Beim Handy ist das genau andersherum (iOS sowie Android). Ist das so gewollt?
      : NV Updater | Nvidia Driver Update Tool

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „TTX.exe“ ()

      @TTX.exe Für das Entfernen von Areas in der MetroControlBox ist so direkt nicht möglich.
      Um jedoch das von dir gewünschte Szenario zu erreichen musst du die Eigenschaft LoadDefaultAreas auf false setzen,
      und anschließend zwei neue Areas (Minimieren und Schließen) erstellen, und diese der MetroControlBox zuweisen.
      Dies funktioniert zum Beispiel so:

      VB.NET-Quellcode

      1. Dim area As New MetroSuite.MetroControlBoxArea(MetroSuite.MetroControlBoxArea.ControlBoxAreaType.Close, MetroSuite.Design.Style.Light, "close")
      2. MetroControlBox1.Areas.Add(area)


      Natürlich musst du dann auch noch das Event bearbeiten, in dem auf diese Area geklickt wird.
      Dies machst du im Event MetroControlBox_AreaClicked().


      Bezüglich des MetroSwitch... ja ich glaube das war nicht gewollt haha.
      Mfg: Gather
      Private Nachrichten bezüglich VB-Fragen werden Ignoriert!


      Hey, hoffe wurde noch nicht gefragt, aber wie kann ich das bei den MetroCheckBoxes verhindern?



      Man kann die Größe ja nicht verändern, somit wird z.b. das kleine G abgeschnitten.

      Gruß


      Meine Website:
      www.renebischof.de

      Meine erste App (Android):
      PartyPalooza
      @xored
      Leider hat es bisher bei mir immer nur geholfen die Textgröße auf 8,6 zustellen.
      Ich konnte keine andere Lösung bis jetzt finden.
      Wenn ich dir auf irgendeiner Art und Weise helfen konnte, drück doch bitte den "Hilfreich" Button :thumbup:

      Für VB.NET Entwickler: Option Strict On nicht vergessen!
      Okay Danke dir. Ist zwar etwas doof, aber nun ja. Gibt es eigentlich ne Möglichkeit die Themes anzupassen?
      Z.B. das Grün bei SamsungHealth ist sehr grell, würde da gerne ein dunkleres nehmen, geht das?


      Meine Website:
      www.renebischof.de

      Meine erste App (Android):
      PartyPalooza

      xored schrieb:

      geht das?

      Jo das funktioniert. Du musst nur die entsprechende .mstheme Datei mit einem Editor öffnen (z.B. Notepad++ sollte aber auch mit dem normalen Editor funktionieren) und dort stehen alle Farbwerte im ARGB Format.

      Alternativ kannst Du auch meinen MetroSuite Theme Creator verwenden um die Werte zu ändern.
      Wenn ich dir auf irgendeiner Art und Weise helfen konnte, drück doch bitte den "Hilfreich" Button :thumbup:

      Für VB.NET Entwickler: Option Strict On nicht vergessen!
      Die ist in der MetroSuite.Extensions.dll fest verbaut.
      Du kannst die Werte aber trotzdem ändern wenn du zum Beispiel einmal die MetroSuite.Extensions nochmal runterlädst, und dann im Ordner Themes befinden sich alle Themes.
      Dann müsstest du aber die überarbeitete Themes Datei in deinem Debug Ordner mit hineinpacken und diese dann im Programm aus laden und dieses Theme dann anwenden.

      Theme von einer externen .mstheme Datei laden:
      Richtiger Code im 1319 Beitrag.

      Was ich gerade gesehen habe, du kannst auch im Code aus die Farben ändern.
      So zum Beispiel:

      C#-Quellcode

      1. SamsungHealthTheme theme = new SamsungHealthTheme();
      2. theme.BalloonBorderColor = Color.Red;
      3. theme.ApplyTheme(this); // this = me in VB.NET

      Wenn ich dir auf irgendeiner Art und Weise helfen konnte, drück doch bitte den "Hilfreich" Button :thumbup:

      Für VB.NET Entwickler: Option Strict On nicht vergessen!

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „ClonkAndre“ ()

      Kleiner Nachtrag

      Ich denke das sollte eigentlich ganz fix gehen mit dem Theme Creator. ;)

      // Edit
      So funktioniert der Code zum laden von externen .msthemes Dateien:

      C#-Quellcode

      1. MetroSuiteTheme theme1 = new MetroSuiteTheme();
      2. theme1 = theme1.FromFile(".\\SamsungHealthTheme.mstheme");
      3. theme1.ApplyTheme(this);

      Hab schon länger die MetroSuite nicht mehr benutzt :whistling:
      Wenn ich dir auf irgendeiner Art und Weise helfen konnte, drück doch bitte den "Hilfreich" Button :thumbup:

      Für VB.NET Entwickler: Option Strict On nicht vergessen!

      Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „ClonkAndre“ ()

      Jap ich denke dass einfachste ist für dich ein eigenes Thema zu generierer, welches das SamsungHealthTheme als Vorbild hat.
      Dazu lädst du dir, wie schon von @ClonkAndre super erklärt, die Extensions-Zip runter. Dort findet sich ein Themes Ordner mit der passenden Datei.
      Diese editierst du einfach nach deinen Wünschen und lädst sie anschließend. Mit einem Editor solltest du ziemlich leicht mittels Suchen & Ersetzen die gewünschten Werte ändern können.
      Mfg: Gather
      Private Nachrichten bezüglich VB-Fragen werden Ignoriert!