Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    [C#] ContextMenuStrip da classe

    Ciao a tutti forse è un pò banale come domanda ma ho un problema:
    Ho una Windows Application con una Form e poi all'interno del progetto ho un file di classe .cs dall'interno del quale dovrei far comparire un ContextMenuStrip nella mia Form, come posso fare?
    Grazie

  2. #2
    Basta fare in modo che la classe che deve aggiungere il ContextMenuStrip abbia un riferimento al form; in tal modo può fare una cosa tipo
    codice:
    ContextMenuStrip cms = new ContextMenuStrip(/*eventuali parametri del costruttore*/);
    //imposta le varie proprietà
    cms.proprietà=valore;
    //...
    nomeform.Add(cms);
    Amaro C++, il gusto pieno dell'undefined behavior.

  3. #3
    Il problema è che la Form non mi espone il metodo Add
    La mia Form è questa:
    public partial class miaForm : Form
    {
    .......
    }

    nel mio file classe.cs faccio:

    ContextMenuStrip cms = new ContextMenuStrip();
    //imposta le varie proprietà
    cms.proprietà=valore;
    miaForm.Add -> il metodo Add non c'è.......


  4. #4
    Ho provato così nel mio file di classe:
    public void ClickHandler(Object sender, MouseEventArgs e)
    {

    if (e.Button == MouseButtons.Right)
    {
    ContextMenuStrip cms = new ContextMenuStrip();
    //imposta le varie proprietà
    cms.Items.Add("prova");
    cms.Show((Control)sender, e.X, e.Y);

    }

    e funziona.... come mai?

  5. #5
    Originariamente inviato da artistic101
    miaForm.Add -> il metodo Add non c'è.......
    Pardon, miaForm.Controls.Add... ma è comunque sbagliato, perché nello scrivere la prima risposta non ho tenuto conto del tipo di controllo... devi fare miaForm.ContextMenuStrip=cms.
    Amaro C++, il gusto pieno dell'undefined behavior.

  6. #6
    Originariamente inviato da artistic101
    e funziona.... come mai?
    È un altro modo per mostrare il menu...
    Amaro C++, il gusto pieno dell'undefined behavior.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.