2009-12-01 53 views

回答

4

我用一個複製的菜單項。如果你想使用Ctrl + C,那麼你必須實現鍵盤事件。這裏是我的代碼:

private void copyToolStripMenuItem_Click(object sender, EventArgs e) 
{ 
     foreach (Control myControl in tabControl1.SelectedTab.Controls) 
     { 
      if (myControl is DataGridView)) 
      { 
        DataGridView tempdgv = (DataGridView)myControl; 
        DataObject dataObj = tempdgv.GetClipboardContent(); 
        try 
        { 
         Clipboard.SetDataObject(dataObj, true); 
        } 
        catch (Exception ex) 
        { 
         // Do Something 
        } 
        finally 
        { 
         if (selectAllToolStripMenuItem.Checked) 
         { 
          selectAllToolStripMenuItem_Click(this, EventArgs.Empty); 
         } 

        } 
       } 
    } 
} 
+0

這段代碼有什麼問題? private DataObject OnCopySelectedRowsToClipboard() this.MyDataGridView.ClipboardCopyMode = DataGridViewClipboardCopyMode.EnableWithoutHeaderText; //將此選擇添加到剪貼板。 ( this.MyDataGridView.GetClipboardContent()); return new DataObject(Clipboard.GetText()); } – nav100 2009-12-01 15:49:23

+0

除了我不知道你爲什麼要返回新的DataObject(Clipboard.GetText());但它應該沒有影響,我可以看到 – 2009-12-01 15:51:27

1

這將當前選中的單元格複製名爲myDataGridView數據到剪貼板DataGridView的。

Clipboard.SetDataObject(myDataGridView.GetClipboardContent())