我有一個WINFORM應用與的DataGridView控制,鉤入一的ContextMenuStrip控制。
的的ContextMenuStrip火災事件基本上執行的DataGridView和剪貼板之間的複製/粘貼。ToolStripMenuItem_Click(對象發件人,EventArgs E) - 鑄造回一個DataGridView
private void copyToolStripMenuItem_Click(object sender, EventArgs e)
{
CopyClipboard();
}
private void CopyClipboard()
{
DataObject d = myGrid.GetClipboardContent();
Clipboard.SetDataObject(d);
}
private void pasteCtrlVToolStripMenuItem_Click(object sender, EventArgs e)
{
PasteClipboard();
}
我已經添加了另一個的DataGridView我的應用程序,並希望上述兩者之間共享的ContextMenuStrip因爲,根據我的代碼,它是硬編碼到我的網格,myGrid。
我認爲它僅僅是一個簡單的行使修改我的代碼從發件人蒙上了新的的DataGridView控制:
private void copyToolStripMenuItem_Click(object sender, EventArgs e)
{
CopyClipboard(sender);
}
private void CopyClipboard(object sender)
{
var grid = (DataGridView)sender;
DataObject d = grid.GetClipboardContent();
Clipboard.SetDataObject(d);
}
private void pasteCtrlVToolStripMenuItem_Click(object sender, EventArgs e)
{
var grid = (DataGridView)sender;
PasteClipboard(grid);
}
但當然,我發現發件人是而不是ToolStripMenuItem。
是否有通過發件人引用原始DataViewGrid的方式,或EventArgs的?
而且,感謝您的閱讀:)
PaShKa,感謝您的回覆,但CType(發件人,DataGridView)是c#(DataGridView)發件人和發件人的vb版本沒有一個屬性稱爲父親:( – flaZer 2012-07-19 18:28:10
您可以將發件人轉換爲ToolStripMenuItem?我認爲它有.parent可用 – PaShKa 2012-07-19 18:31:02
您不能將ToolStripMenuItem轉換爲DataGridView。在這種情況下,發件人是ToolStripMenuItem。 – LarsTech 2012-07-19 18:39:54