您的位置:首页 > 编程语言

DataGridView选择的内容拷贝至剪贴板代码

2011-10-24 12:09 267 查看
DataGridView选择的内容拷贝至剪贴板代码,

拷贝模式设定

DataGridView1.ClipboardCopyMode= DataGridViewClipboardCopyMode.EnableWithoutHeaderText //设置可复制的模式

其中DataGridView.ClipboardCopyMode 属性获取或设置一个值,该值指示用户是否可以将单元格的文本值复制到 Clipboard,以及是否包括行标题和列标题文本。

命名空间: System.Windows.Forms

程序集: System.Windows.Forms(在 System.Windows.Forms.dll 中)

选中部分拷贝

Clipboard.SetDataObject(DataGridView1.GetClipboardContent()) //将控件选中的数据置于系统剪贴板中

DataGridView粘贴

代码

if (DataGridView1.CurrentCell.Value == null)

{

return;

}

int insertRowIndex = DataGridView1.CurrentCell.RowIndex;

string pasteText=Clipboard.GetText();//从系统剪贴板中获取数据

if(string.IsNullOrEmpty(pasteText))

{

return;

}

string[] lines=pasteText.Split('\r');//按行分组

bool isHeader=true;

foreach(string line in lines)

{

if(isHeader)

{

isHeader=false;//当可复制模式中含有标题时的过滤操作

}

else

{

string[] vals=line.Split('\t');//按tab空格分组

if (vals.Length - 1 != DataGridView1.ColumnCount)

{

throw new ApplicationException("列数错误");

}

DataGridViewRow row = DataGridView1.Rows[insertRowIndex];

row.HeaderCell.Value=vals[0];

for(int i=0;i<row.Cells.Count-1;i++)

{

row.Cells[i].Value=vals[(i+1)];

}

insertRowIndex+=1;

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: