PDA

View Full Version : [C#] Aprire un ToolStripMenu


DuHarTapt
24-12-2008, 11:33
In un form ho un menuStrip che contiene il ToolStripMenuItem "File" che a sua volta contiene un ToolStreepMenuItem "Apri".
Quando lancio l'applicazione ovviamente vedo solo la scritta File. Se ci clicco sopra si apre il menù e quindi vedo anche "Apri".
Esiste un modo per aprire il menù senza interagire con mouse e tastiera (Qualche metodo, proprietà,impostazione..)? Ovvero, come dovrei fare per far si che il menu si aprisse al verificarsi di un determinato evento(o fosse già aperto quando lancio l'applicazione).




public Form()
{
InitializeComponent(); //qui vengono creati i menu
aproMenu() ; //Richiamo il metodo che mi apre il menu
}


public void aproMenu()
{
mioMenu. // ??? qualcosa che apra il menu
}

gugoXX
24-12-2008, 12:00
Non dal costruttore e neppure dalla Load, quando non ancora tutto e' pronto, ma almeno dall'evento Shown in poi
puoi eseguire MenuStripFile.ShowDropDown();
(Se il menustrip di File si chiama appunto MenuStripFile)

DuHarTapt
24-12-2008, 20:02
[Risolto nel post successivo]Non succede nulla.. Forse sbaglio qualcosa.

In Form1 ho questi controlli


private MenuStrip menuStrip1;
private ToolStripMenuItem fileToolStripMenuItem;
private ToolStripMenuItem apriToolStripMenuItem;
private Button button1;



in InitializeComponent() //codice autogenerato

this.menuStrip1.Items.AddRange(new ToolStripItem[] {
this.fileToolStripMenuItem});
this.menuStrip1.Name = "menuStrip1";
//altre proprieta del controllo

this.fileToolStripMenuItem.DropDownItems.AddRange(new ToolStripItem[] {
this.apriToolStripMenuItem});
this.fileToolStripMenuItem.Name = "fileToolStripMenuItem";
// altre proprieta del controllo

this.apriToolStripMenuItem.Name = "apriToolStripMenuItem";
// altre proprieta del controllo

this.button1.Name = "button1";
this.button1.Click += new System.EventHandler(this.apriMenu)





In Form1


public Form1()
{
InitializeComponent();
}



private void apriMenu(object sender, EventArgs e)
{
this.apriToolStripMenuItem.ShowDropDown();
}
Quando premo il bottone però il menu non si apre
Cosa sbaglio?

DuHarTapt
24-12-2008, 20:05
Come non detto.. sono un @@@@
Ho richiamato showdropdown su apriToolStripMenuItem invece che su fileToolStripMenuItem :fagiano:
Così funziona. Grazie :)