1、如果有超过一屏的数据,想通过关键字查找到相关记录,然后再定位之,做法如下:
遍历所有行,把某单元格的值和关键字对比,找到后清除所有选择行,然后把当前行设为选择,然后把grid的CurrentCell设置为当前行的某个可见单元格即可,效果就会自动跳到定位好的行上。
示例代码:
string InputStr=txtFindSp.Text;
foreach(DataGridViewRow dvr in dgvSp.Rows)
{
if(dvr.Cells[2].Value.ToString().StartsWith(InputStr))
{
dgvSp.ClearSelection();
dvr.Selected=true;
dgvSp.CurrentCell = dgvSp.dvr.Cells[1];
break;
}
}
2 选中当前grid中的某一行的某一列值,并且单击某一个列,都选中当前行。
labId.Text = Grid.CurrentRow.Cells[0].Value.ToString(); //当前行的某一列值
labName.Text = Grid.CurrentRow.Cells[1].Value.ToString();
Grid.CurrentRow.Selected = true; //不管单击那一列,选中当前单击的那一行
3、winform中gridview不自动生成列,自定义列如何做?
方法1.在columns中点击..按钮,自已新增栏,并置DataPropertyname为栏所绑定的列名即可(sql中的字段名).
方法2.加入下列代码
CgmxDataGrid.DataSource = ds
CgmxDataGrid.DataMember = table
CgmxDataGrid.DataBindings()