我有一个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