资源预览内容
第1页 / 共6页
第2页 / 共6页
第3页 / 共6页
第4页 / 共6页
第5页 / 共6页
第6页 / 共6页
亲,该文档总共6页全部预览完了,如果喜欢就下载吧!
资源描述
1).右键点击行时选中行,并弹出操作菜单1). 添加一个快捷菜单 contextMenuStrip1;2). 给 dataGridView1 的 CellMouseDown 事件添加处理程序:复制内容到剪贴板 程序代码private void DataGridView1_CellMouseDown(object sender, DataGridViewCellMouseEventArgs e)if (e.Button = MouseButtons.Right)if (e.RowIndex = 0)/若行已是选中状态就不再进行设置if (dataGridView1.Rowse.RowIndex.Selected = false)dataGridView1.ClearSelection();dataGridView1.Rowse.RowIndex.Selected = true;/只选中一行时设置活动单元格if (dataGridView1.SelectedRows.Count = 1)dataGridView1.CurrentCell = dataGridView1.Rowse.RowIndex.Cellse.ColumnIndex;/弹出操作菜单contextMenuStrip1.Show(MousePosition.X, MousePosition.Y);效果图:2).复制选中单元格的内容到剪贴板复制内容到剪贴板 程序代码Clipboard.SetDataObject(dataGridView1.GetClipboardContent();3).只显示自定义列复制内容到剪贴板 程序代码dataGridView1.AutoGenerateColumns = false;/必须在代码中设置4).显示图片通常,我们将图片路径保存在数据库中,但在 dataGridView1 中要显示图片,可以进行如下操作:.添加一个 DataGridViewTextBoxColumn 类型的列,Name=Path,DataPropertyName=Pic,Visible=False;.添加一个 DataGridViewImageColumn 类型的列,Name=Pic;.dataGridView1 控件 DataBindingComplete 事件处理程序如下:复制内容到剪贴板 程序代码private void DataGridView1_DataBindingComplete(object sender, DataGridViewBindingCompleteEventArgs e)Image image1 = null;Image image2 = null;string path = string.Empty;for (int i = 0; i / 绘制网格填充空白区域/ / / public void CellPainting(object sender, DataGridViewCellPaintingEventArgs e)DataGridView myDataGridView = (DataGridView)sender;if (myDataGridView.Rows.Count 0)int i = myDataGridView.ColumnHeadersHeight;/标题行高int j = myDataGridView.Rows.GetRowsHeight(DataGridViewElementStates.Visible); /所有可见行总高int k = myDataGridView.Height; /控件高度int l = myDataGridView.Rows.GetLastRow(DataGridViewElementStates.Visible);/最后一行索引int count = myDataGridView.Columns.Count;/列总数int width = 0;/当网格未充满控件时才画线if (i + j dataGridView1.Height)MessageBox.Show(有);elseMessageBox.Show(无);/水平滚动条if(dataGridView1.Columns.GetColumnsWidth(DataGridViewElementStates.None) dataGridView1.Width)MessageBox.Show(有);elseMessageBox.Show(无);10).为什么列标题总不居中?已经将列标题默认对齐方式设置为居中:复制内容到剪贴板 程序代码dataGridView1.ColumnHeadersDefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;/列标题居中显示但实际的效果总是偏左了一点,原因是列可以进行排序,排序标志符号在列标题上占了空间。逐列按下边设置可去掉:复制内容到剪贴板 程序代码dataGridView1.Columnsi.SortMode = DataGridViewColumnSortMode.NotSortable;
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号