MenuStrip mit vb.net code erweitern?
-
hio
alsooo. ich hab nen kleines problem.
ich wollte gerne son nettes menu haben, wie z.B. im explorer, also son strip menu, wo datei und bearbeiten etc steht. nunja, im form designer kann man ja so schön alles einstellen, aber ich beziehe meine daten aus einer mysql datenbank. kann mir vllt sagen, wie ich diese daten, dann in solche felder einfügen kann?
-
Du erstellst ein/mehrere Instanz[en] des Types MenuItem dynamisch und fügst diese per Add-Methode des Menüs in dieses ein.
Beispiel:
using System; using System.Drawing; using System.Collections; using System.ComponentModel; using System.Windows.Forms; using System.Data; namespace DynMenü { /// <summary> /// Zusammenfassung für Form1. /// </summary> public class Form1 : System.Windows.Forms.Form { private System.Windows.Forms.MainMenu mainMenu1; /// <summary> /// Erforderliche Designervariable. /// </summary> private System.ComponentModel.Container components = null; public Form1() { // // Erforderlich für die Windows Form-Designerunterstützung // InitializeComponent(); // // TODO: Fügen Sie den Konstruktorcode nach dem Aufruf von InitializeComponent hinzu // makeMenuItems(this.mainMenu1,5); } /// <summary> /// Die verwendeten Ressourcen bereinigen. /// </summary> protected override void Dispose( bool disposing ) { if( disposing ) { if (components != null) { components.Dispose(); } } base.Dispose( disposing ); } #region Vom Windows Form-Designer generierter Code /// <summary> /// Erforderliche Methode für die Designerunterstützung. /// Der Inhalt der Methode darf nicht mit dem Code-Editor geändert werden. /// </summary> private void InitializeComponent() { this.mainMenu1 = new System.Windows.Forms.MainMenu(); // // Form1 // this.AutoScaleBaseSize = new System.Drawing.Size(5, 13); this.ClientSize = new System.Drawing.Size(292, 266); this.Menu = this.mainMenu1; this.Name = "Form1"; this.Text = "Form1"; } #endregion /// <summary> /// Der Haupteinstiegspunkt für die Anwendung. /// </summary> [STAThread] static void Main() { Application.Run(new Form1()); } private void makeMenuItems(Menu yourmenu, int anz) { for(int idx=0;idx<anz;idx++) { yourmenu.MenuItems.Add(new MenuItem("Untermenü " + idx.ToString())); } } } }