1·选中行操作:selectionMode属性
<span style="font-size:18px;">DataGridViewSelectionMode.ColumnHeaderSelect' 单击列头就可以选择整列 DataGridViewSelectionMode.FullColumnSelect '单击列头或列中的单元格就可以选择整列 DataGridViewSelectionMode.FullRowSelect '单击行头或行中的单元格就可以选择整行 DataGridViewSelectionMode.RowHeaderSelect '单击行头就可以选择整行 DataGridViewSelectionMode.CellSelect'可以选定一个或多个单元格</span>
2·对选中的多行进行更新和删除工作
<span style="font-size:18px;"><strong> </strong> If DataGridView1.Rows.Count > 0 Then '表里是否存在数据 For i As Integer = k To 1 Step -1 '遍历所有的被选中的行 Dim cardno As String = DataGridView1.SelectedRows(i - 1).Cells("cardNo").Value.ToString() '获取选中行的卡号 enOnline.cardNo = cardno isUpdate = facOffline.partOffline(enOnline) If isUpdate = True Then DataGridView1.Rows.RemoveAt(DataGridView1.SelectedRows(i - 1).Index) '删除选中行的代码 End If Next MessageBox.Show("所选用户已经下线") Else MessageBox.Show("没有上机用户","警告",MessageBoxButtons.OK,MessageBoxIcon.[Error]) End If</span>3·数据库表中部分列赋给 vb.net dataGridView1控件:采用隐藏技术:
有时希望仅显示DataGridView的部分列,将其它列隐藏。比如DataGridView含有一列包含员工薪水信息,你可能希望仅将这些信息显示给具有一定信用级别的人,其他人则隐藏。
通过编程方式隐藏
DataGridViewColumn类的Visible 属性决定了是否显示该列。
<span style="font-size:18px;"> DataGridView1.DataSource = table DataGridView1.Columns("serial").HeaderText = "序列" DataGridView1.Columns("cardNo").HeaderText = "卡号" DataGridView1.Columns("studentName").HeaderText = "姓名" DataGridView1.Columns("onDate").HeaderText = "上机日期"</span>5·设定行高和列宽自动调整
<span style="font-size:18px;">DataGridView1.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells</span>2·设定包括和所有单元格的行高自动调整
<span style="font-size:18px;">DataGridView1.AutoSizeRowsMode= DataGridViewAutoSizeRowsMode.AllCells</span>
6·如何调整最后一列的宽度使其占据网格的剩余客户区?
以默认方式填充DataGridView时,可能会发生因列的宽度不够,而暴露出控件的灰色背景的情况,很不美观。将最后一列的AutoSizeMode属性设置为Fill会使该列调整大小来填充网格的剩余客户区(client area)。作为一个可选的方式,你可以设置最后一列MinimumWidth属性,以保持该列的宽度不至于太小。
当用户选择DataGridView的一行,按下Delete键时就会触发UserDeletingRow 事件。你可以提示用户是否确定要删除该行记录,建议仅在用户要删除已存在的记录(而不是用户添加的新行)时才进行这种提示。将下面这些代码添加到UserDeletingRow事件的处理方法中就可以实现这种功能:
<span style="font-size:18px;">if(!e.Row.IsNewRow) { DialogResult response= MessageBox.Show("Are you sure?","Deleterow?" MessageBoxButtons.YesNo MessageBoxIcon.Question MessageBoxDefaultButton.Button2) if (response == DialogResult.No) e.Cancel = true } </span>当然,这只是目前我在机房重构中用到的一些关于DataGridView控件的总结,这篇博客我会不断更新,敬请期待!