2010-02-12 145 views
1

我在C#项目一个DataGrid。 我所试图做的是从数据网格复制数据,然后粘贴文件。然后编辑内容并从剪贴板插回到datagrid。.NET DataGrid的复制/粘贴

我可以从DataGrid中的数据复制到剪贴板,但我不能插入/从剪贴板替换文本到数据网格。

我怎样才能插入来自剪贴板数据到数据网格?

数据采样从数据网格复制并粘贴到文件:

> 0 base_hair00 Egyptian 0 2 2 2 2 1 _S_Hair000_Front_L _C_elf-f-hair000 0 Hair000_Bottom_S _C_elf-f-hair000 0 Hair000_Top_S _C_elf-f-hair000 0 - - 0 - - 0 - - 

此我想在最后插入到数据网格

> 0 base_hair02 Egyptian2 0 2 2 2 2 1 _S_Hair000_Front_L _C_elf-f-hair000 0 Hair000_Bottom_S _C_elf-f-hair000 0 Hair000_Top_S _C_elf-f-hair000 0 - - 0 - - 0 - - 
+0

你会被闯民宅到DataGrid中System.Web.UI.WebControls 或System.Windows .Forms – caesay 2010-02-12 23:55:19

+0

System.Windows.Forms – DanSpd 2010-02-12 23:56:20

+0

你能再描述一下你的问题吗?将数据输入到您的数据网格中是否有问题?或者只是剪贴板部分的问题。 – caesay 2010-02-12 23:58:58

回答

1

添加一个“粘贴”功能或处理KeyDown事件侦听粘贴动作是这样的:

void datagrid_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e) 
    { 
     if (e.KeyCode == System.Windows.Forms.Keys.V && e.Control) 
     { 
      string data = Clipboard.GetData(DataFormats.Text).ToString(); 
      string[] cells = data.Split('\t'); 
      for (int i = 0; i < cells.Length; i++) 
       datagrid[datagrid.CurrentRowIndex, i] = cells[i]; 
     } 
    }