Display Multiple selected rows from gridview to mutiple textboxes in c#

南笙酒味 提交于 2019-12-12 05:12:25

问题


I want to get data from Datagridview to text boxes but i want every row i select should be show in multiple text boxes? I am doing it but it is only select one row and show in one text box but i want to get data of multiple rows to multiple Textboxes.

private void dataGridView_1CellMouseClick(object sender, DataGridViewCellMouseEventArgs e) {
    // to set oem no to textfield particular.
    dataGridView1.Refresh();
    try {
        int i;
        i = dataGridView1.SelectedCells[0].RowIndex;
        Particular1Txt.Text = dataGridView1.Rows[i].Celles["OEM_No"].Value.ToString();
    }
    catch (Exception ex) {
        MessageBox.Show(es.Message);
    }    
}

回答1:


Well, this should work (not tested thoroughly):

VB:

    Dim TBlist As List(Of TextBox)
    TBlist.Add(Me.TextBox1)
    TBlist.Add(Me.TextBox2)
    TBlist.Add(Me.TextBox3)
    TBlist.Add(Me.TextBox4)
    TBlist.Add(Me.TextBox5)

    Dim mLimit As Int16 = Math.Min(Me.dgv.SelectedRows.Count - 1, TBlist.Count - 1)

    For ir = 0 To mLimit
        Dim tb As TextBox = DirectCast(TBlist.Item(ir), TextBox)
        tb.Text = Me.dgv.SelectedRows(ir).cells("RequiredCellName").value
    Next

Converted C#:

    List<TextBox> TBlist = default(List<TextBox>);
    TBlist.Add(this.TextBox1);
    TBlist.Add(this.TextBox2);
    TBlist.Add(this.TextBox3);
    TBlist.Add(this.TextBox4);
    TBlist.Add(this.TextBox5);

    Int16 mLimit = Math.Min(this.dgv.SelectedRows.Count - 1, TBlist.Count - 1);

    for (ir = 0; ir <= mLimit; ir++) {
        TextBox tb = (TextBox)TBlist.Item(ir);
        tb.Text = this.dgv.SelectedRows(ir).cells("RequiredCellName").value;
    }

It will use as many textboxes as inserted to the list of textboxes, or as many rows as selected, which ever is less.



来源:https://stackoverflow.com/questions/46539704/display-multiple-selected-rows-from-gridview-to-mutiple-textboxes-in-c-sharp

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!