Net随笔(Winform)

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()

原文地址:https://www.cnblogs.com/shf/p/981243.html