1

DataGrid で検索するための TextBox があり、結果は DataGrid で検索された行のみを選択するため、選択した行の結果のみを DataGrid に表示し、他のすべての行を非表示にします。

これが私のコードです:

`

    private void SearchTextBox_TextChanged(object sender, EventArgs e)
    {
        foreach (DataGridViewRow row in dgvUnit.Rows)
        {
            if(row.Cells["Id"].Value.ToString().ToLower().StartsWith(SearchTextBox.Text.ToLower()))
            {
                row.Selected = true;
            }
        }
    }

`

4

1 に答える 1

0

行の可視性を操作できます (使用するDataSourceかどうかに関係なく)

private void SearchTextBox_TextChanged(object sender, EventArgs e)
{
    dgvUnit.CurrentCell = null;

    foreach (DataGridViewRow row in dgvUnit.Rows)
    {
        if(row.Cells["Id"].Value.ToString().ToLower().StartsWith(SearchTextBox.Text.ToLower()))
        {
            row.Visible = true;
            row.Selected = true;
        }
        else
        {
            row.Visible = false;
        }
    }
}
于 2013-06-26T08:20:32.263 に答える