Csharp windowform datagridview Clipboard TO EXCEL OR FROM EXCEL DATA 保存datagridview所有數據
2011-10-13 12:59
267 查看
from http://www.codeproject.com/KB/office/DataGridViewCopyPaste.aspx
/// <summary> /// 分行顯示顏色 /// 塗聚文 2011-10-13 /// 締友計算機信息技術有限公司 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void dataGridView1_RowsAdded(object sender, DataGridViewRowsAddedEventArgs e) { //分行顯示顏色 for (int i = 0; i < dataGridView1.RowCount; i++) { if (i % 2 == 0) { dataGridView1.Rows[i].DefaultCellStyle.BackColor = Color.LightPink; } } } /// <summary> /// 保存dataGridView所有記錄 /// 塗聚文 2011-10-13 /// 締友計算機信息技術有限公司 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void bindingNavigatoSaveNewItem_Click(object sender, EventArgs e) { int cum = 0; for (int i = 0; i < dataGridView1.RowCount; i++) { administrativeAreaListInfo.AreaCode = dataGridView1[0, i].Value.ToString(); administrativeAreaListInfo.AreaName = dataGridView1[1, i].Value.ToString(); administrativeAreaListInfo.AreaParentID = int.Parse(dataGridView1[2, i].Value.ToString()); int k = administrativeAreaListBLL.InsertAdministrativeAreaList(administrativeAreaListInfo); if (k >= 1) { //MessageBox.Show("oK"); //this.DialogResult = DialogResult.OK; cum = cum + 1; } else { this.DialogResult = DialogResult.Cancel; } } DialogResult dresult = MessageBox.Show("添加:" + cum.ToString() + "條記錄!","信息提示", MessageBoxButtons.OK, MessageBoxIcon.Information); if (dresult == DialogResult.OK) { this.Close(); this.DialogResult = DialogResult.OK; } } /// <summary> /// /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void dataGridView1_DefaultValuesNeeded(object sender, DataGridViewRowEventArgs e) { // 设定单元格的默认值 e.Row.Cells["AreaParentID"].Value = AreaParentID; e.Row.Cells["AreaParentName"].Value = AreaParentName; } /// <summary> /// /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void dataGridView1_KeyUp(object sender, KeyEventArgs e) { if ((e.Control && e.KeyCode == Keys.Delete) || (e.Shift && e.KeyCode == Keys.Delete)) { CopyClipboard(); } if ((e.Control && e.KeyCode == Keys.Insert) || (e.Shift && e.KeyCode == Keys.Insert)) { PasteClipboard(); } } /// <summary> /// 復制 /// </summary> private void CopyClipboard() { DataObject d = dataGridView1.GetClipboardContent(); Clipboard.SetDataObject(d); } /// <summary> /// 粘貼 /// </summary> private void PasteClipboard() { try { string s = Clipboard.GetText(); string[] lines = s.Split('\n'); int iFail = 0, iRow = dataGridView1.CurrentCell.RowIndex; int iCol = dataGridView1.CurrentCell.ColumnIndex; DataGridViewCell oCell; foreach (string line in lines) { if (iRow < dataGridView1.RowCount && line.Length > 0) { string[] sCells = line.Split('\t'); for (int i = 0; i < sCells.GetLength(0); ++i) { if (iCol + i < this.dataGridView1.ColumnCount) { oCell = dataGridView1[iCol + i, iRow]; if (!oCell.ReadOnly) { if (oCell.Value.ToString() != sCells[i]) { oCell.Value = Convert.ChangeType(sCells[i], oCell.ValueType); oCell.Style.BackColor = Color.Tomato; } else iFail++;// } } else { break; } } iRow++; } else { break; } if (iFail > 0) MessageBox.Show(string.Format("{0} 更新失敗,因為只讀設置列", iFail)); } } catch (FormatException) { MessageBox.Show("您粘貼錯誤的數據格式為單元格"); return; } } /// <summary> /// 復制到EXCEL /// 塗聚文 2011-10-13 /// 締友計算機信息技術有限公司 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void copyToolStripMenuItem_Click(object sender, EventArgs e) { CopyClipboard(); } /// <summary> /// 從EXCEL粘貼 /// 塗聚文 2011-10-13 /// 締友計算機信息技術有限公司 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void pasteCtrlVToolStripMenuItem_Click(object sender, EventArgs e) { PasteClipboard(); }
相关文章推荐
- Csharp windowform datagridview TO EXCEL OR FROM EXCEL DATA 保存datagridview所有數據
- Java 遍历磁盘文件并将所有的文件名保存至文本
- C#获取指定盘符/文件夹下的所有folder/data,并输出保存到*.txt
- python执行某一目录下所有.py结尾的文件,并将执行结果保存到log.txt文档。一般用于批量执行测试。
- 文档内的当前编码不能正确保存文档内所有字符,可能需改为UTF-8支持的编码
- 利用TinyXML读取VOC2012数据集的XML标注文件裁剪出所有人体目标保存为文件
- DataGridView获得所有选中行的某列的值
- 读取指定文件夹下所有文件并保存
- 在DataGridView中修改后的数据如何保存到数据库
- Scrapy框架学习 - 爬取豆瓣电影排行榜TOP250所有电影信息并保存到MongoDB数据库中
- HOWTO--如何移動Oracle的所有數據文件
- 破解电脑密码的所有妙方,请收藏保存
- android 所有控件属性 保存下来记得看看
- 保存APP内所有异常
- java保存输出二叉树所有路径
- 如何隐藏datagridview除了标题以外的所有行啊?
- 保存数据库中其他对象不变,删除数据库中所有数据的实现方法
- 快速保存网页中所有图片的方法
- 所有文件的后缀名大全你值得保存一份
- //C#查询所有DataGridView绑定