将datagridview中的复选框值返回到c#中的表单

时间:2016-04-25 12:27:08

标签: c# checkbox datagridview return

我试图在双击时从dataGridView1获取复选框值,除了复选框之外,每个字段都工作正常,所以我需要的是当用户检查我希望能够将该检查从dataGridView1返回到表单时请检查我的代码。

private void dataGridView1_MouseDoubleClick_1(object sender, MouseEventArgs e)
    {
        //All is working perfect here return from datagridview1
        to each text box
        DataGridViewRow dr = dataGridView1.SelectedRows[0];
        textBox1.Text = dr.Cells[0].Value.ToString();   //id
        textBox2.Text = dr.Cells[1].Value.ToString();   //name
        textBox3.Text = dr.Cells[2].Value.ToString();   //age
        comboBox1.Text = dr.Cells[3].Value.ToString();  //day
        comboBox2.Text = dr.Cells[4].Value.ToString();  //month
        comboBox3.Text = dr.Cells[5].Value.ToString();  //year
        textBox4.Text = dr.Cells[6].Value.ToString();   //reference
        textBox5.Text = dr.Cells[7].Value.ToString();   //weight
        textBox6.Text = dr.Cells[8].Value.ToString();   //height
        textBox7.Text = dr.Cells[9].Value.ToString();   //phonenumber
        textBox8.Text = dr.Cells[39].Value.ToString();  //address
        comboBox4.Text = dr.Cells[40].Value.ToString();  //gender
        textBox9.Text = dr.Cells[35].Value.ToString();  //insurance
        textBox10.Text = dr.Cells[36].Value.ToString(); //profession
        textBox11.Text = dr.Cells[37].Value.ToString(); //email
        dateTimePicker1.Text = dr.Cells[38].Value.ToString();   //datepicker
        textBox12.Text = dr.Cells[10].Value.ToString(); //question1
        textBox13.Text = dr.Cells[11].Value.ToString(); //treatment
        textBox14.Text = dr.Cells[12].Value.ToString(); //allergies
        textBox15.Text = dr.Cells[13].Value.ToString(); //surgicaloperations

        //my problem is here. datagrid view is returning true or false
        // i want it to return check or unchecked for checkbox
            checkBox1.Text = dr.Cells[14].Value.ToString();
            checkBox2.Text = dr.Cells[15].Value.ToString();
            checkBox3.Text = dr.Cells[16].Value.ToString();
            checkBox4.Text = dr.Cells[17].Value.ToString();
            checkBox5.Text = dr.Cells[18].Value.ToString();
            checkBox6.Text = dr.Cells[19].Value.ToString();
            checkBox7.Text = dr.Cells[20].Value.ToString();
            checkBox8.Text = dr.Cells[21].Value.ToString();
            checkBox9.Text = dr.Cells[22].Value.ToString();
            checkBox10.Text = dr.Cells[23].Value.ToString();
            checkBox11.Text = dr.Cells[24].Value.ToString();
            checkBox12.Text = dr.Cells[25].Value.ToString();
            checkBox13.Text = dr.Cells[26].Value.ToString();
            checkBox14.Text = dr.Cells[27].Value.ToString();
} 

1 个答案:

答案 0 :(得分:1)

你应该使用

Sub test()

    Dim rng As Range

    Dim fr As Integer
    Dim lr As Integer
    Dim i As Integer
    Dim curr As Integer
    Dim max As Integer

    Set rng = Range("A:A")

    fr = Worksheets("sheet1").Columns(2).Find(What:="*", after:=Cells(1, 1), LookIn:=xlValues, SearchOrder:=xlByRows, SearchDirection:=xlNext).Row
    lr = Worksheets("sheet1").Columns(2).Find(What:="*", LookIn:=xlValues, SearchOrder:=xlByColumns, SearchDirection:=xlPrevious).Row


    For i = fr To lr
        If Cells(i, 2) <> "" Then
            curr = Mid(Cells(i, 2), 4)
            If curr > max Then max = curr
        End If
    Next i

    MsgBox (max)

End Sub

而不是

checkBox1.Checked