Click here to Skip to main content
15,917,731 members
Home / Discussions / C#
   

C#

 
Generalcode for adding Pin
stevemasters2212-Jul-04 13:58
stevemasters2212-Jul-04 13:58 
GeneralRe: code for adding Pin
KevinMac12-Jul-04 17:01
KevinMac12-Jul-04 17:01 
GeneralRe: code for adding Pin
stevemasters2212-Jul-04 17:27
stevemasters2212-Jul-04 17:27 
GeneralRe: code for adding Pin
Nick Parker12-Jul-04 17:50
protectorNick Parker12-Jul-04 17:50 
GeneralRe: code for adding Pin
stevemasters2212-Jul-04 20:54
stevemasters2212-Jul-04 20:54 
GeneralRe: code for adding Pin
Nick Parker13-Jul-04 7:10
protectorNick Parker13-Jul-04 7:10 
GeneralEventHandler problem Pin
Jae Sammy12-Jul-04 13:33
Jae Sammy12-Jul-04 13:33 
GeneralRe: EventHandler problem Pin
Nick Parker12-Jul-04 14:21
protectorNick Parker12-Jul-04 14:21 
What you can do is subclass the MenuItem and add your event and delegate there.

class OpenPortMenuItem : MenuItem
{
    public delegate void OpenPortEventHandler(object o, OpenPortEventArgs e);
    public event OpenPortEventHandler PortClick;

    public OpenPortMenuItem()
    {
        this.PortClick += new OpenPortEventHandler(OnPortClick);
    }

    protected override void OnClick(EventArgs e)
    {
        if(PortClick != null)
        {
            OpenPortEventArgs args = new OpenPortEventArgs();
            args.Port = 80; //default value
            PortClick(this, args);
        }
    }

    protected void OnPortClick(object sender, OpenPortEventArgs e)
    {
        base.OnClick(e);
    }
}
     class OpenPortEventArgs : EventArgs
{
    private int _port;
    public int Port
    {
        get{return _port;}
        set{_port = value;}
    }

    public OpenPortEventArgs(){}
}



    // using it somewhere...
    OpenPortMenuItem m = new OpenPortMenuItem();
    OpenPortMenuItem m2 = new OpenPortMenuItem();
    m.Click += new EventHandler(this.COM_Click);
    m2.Click += new EventHandler(this.COM_Click);
    this.mainMenu1.MenuItems.AddRange(new OpenPortMenuItem[] {m, m2});
    // more...
    private void COM_Click(object sender, OpenPortEventArgs e)
    {
        // Get the menu item.
        MenuItem m = sender as MenuItem;
        if(m != null)
        {
            // use m here.....
        }
        OpenPortEventArgs a = e as OpenPortEventArgs;
    if(a != null)
        {
            // use a here...
        }
     }

- Nick Parker
My Blog | My Articles

GeneralRe: EventHandler problem Pin
Jae Sammy12-Jul-04 18:19
Jae Sammy12-Jul-04 18:19 
GeneralRe: EventHandler problem Pin
Jae Sammy13-Jul-04 5:39
Jae Sammy13-Jul-04 5:39 
GeneralRe: EventHandler problem Pin
Nick Parker13-Jul-04 7:16
protectorNick Parker13-Jul-04 7:16 
GeneralRe: EventHandler problem Pin
Jae Sammy13-Jul-04 7:40
Jae Sammy13-Jul-04 7:40 
GeneralRe: EventHandler problem Pin
Nick Parker13-Jul-04 8:29
protectorNick Parker13-Jul-04 8:29 
GeneralRe: EventHandler problem Pin
Jay Shankar12-Jul-04 20:05
Jay Shankar12-Jul-04 20:05 
GeneralProblem with System.Management Pin
Jacob Bang12-Jul-04 12:21
Jacob Bang12-Jul-04 12:21 
GeneralRe: Problem with System.Management Pin
eggie512-Jul-04 12:54
eggie512-Jul-04 12:54 
GeneralRe: Problem with System.Management Pin
Nick Parker12-Jul-04 13:07
protectorNick Parker12-Jul-04 13:07 
Generaldll in subdir Pin
elraton12-Jul-04 11:22
elraton12-Jul-04 11:22 
GeneralRe: dll in subdir Pin
Dave Kreskowiak12-Jul-04 13:36
mveDave Kreskowiak12-Jul-04 13:36 
GeneralRe: dll in subdir Pin
dbetting12-Jul-04 16:17
dbetting12-Jul-04 16:17 
GeneralRe: dll in subdir Pin
Heath Stewart13-Jul-04 6:00
protectorHeath Stewart13-Jul-04 6:00 
GeneralRe: dll in subdir Pin
Heath Stewart13-Jul-04 6:02
protectorHeath Stewart13-Jul-04 6:02 
GeneralMDI control Pin
elraton12-Jul-04 11:09
elraton12-Jul-04 11:09 
GeneralRe: MDI control Pin
Heath Stewart13-Jul-04 6:04
protectorHeath Stewart13-Jul-04 6:04 
Questionhow to open a file for r/w for exclusive access??? Pin
garfieldlee9912-Jul-04 10:55
garfieldlee9912-Jul-04 10:55 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.