Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

DataGridView right-click menu/copy example?

I have a DataGridView (dgv1) on my form. In a particular cell, I'd like for the user to be able to right-click and choose "COPY" to copy the contents of the cell to the clipboard. Can anyone point me in the direction of a tutorial or site that shows how to accomplish this in C#?

Thanks!

like image 918
Kevin Avatar asked Aug 24 '11 15:08

Kevin


2 Answers

You can use ContextMenuStrip to accomplish this. (Or ContextMenu for pre-VS2k5)

Excerpt from this article:

ContextMenuStrip mnu = new ContextMenuStrip();
ToolStripMenuItem mnuCopy = new ToolStripMenuItem("Copy");
ToolStripMenuItem mnuCut = new ToolStripMenuItem("Cut");
ToolStripMenuItem mnuPaste = new ToolStripMenuItem("Paste");
//Assign event handlers
mnuCopy.Click += new EventHandler(mnuCopy_Click);
mnuCut.Click += new EventHandler(mnuCut_Click);
mnuPaste.Click += new EventHandler(mnuPaste_Click);
//Add to main context menu
mnu.Items.AddRange(new ToolStripItem[] { mnuCopy, mnuCut, mnuPaste});
//Assign to datagridview
dataGridView1.ContextMenuStrip = mnu;

There is more information on the above link.

like image 76
Kash Avatar answered Nov 01 '22 11:11

Kash


You might want to create a contextmenustrip for the COPY option when you right click.

And in the datagridview properties in the rightclick eventhandler, you link this contextmenustrip.

And on clicking copy, you have another function where you say Clipboard.settext(Datagriditem.value)

This link should help you figure out how to get the right click menu.

right click context menu for datagridview

And use the Clipboard.Setdataobject to get the data into clipboard.

like image 28
roymustang86 Avatar answered Nov 01 '22 13:11

roymustang86