0

グリッドビューにドロップリストがあり、このようにデータベースからドロップダウンリストでデータを選択しています

Adeel
Akram
Ali
Asif
Zeeshan

問題は、たとえばデータを挿入するための 5 つの行で gridview が読み込まれると、データがドロップダウンに表示され、各行の最初の要素がadeelになるように並べ替えられますが、行に従って名前を並べ替えたい場合です。たとえば、最初の行の要素adeel として表示され、2 行目の値は Akram などとして表示されます。以下は、データ挿入用に griview をロードするために使用しているコードです。

For Each gvRow As GridViewRow In GridView1.Rows
    Dim ddlEmpCode As DropDownList = CType(gvRow.FindControl("DropDownlist1"), DropDownList)
    Dim con As SqlConnection = New SqlConnection(ConfigurationManager.ConnectionStrings("DatabaseConnectionString2").ConnectionString)
    Dim cmd As SqlCommand = New SqlCommand("insert into Status(m_date,emp_code) values (@m_Date,@EMp_Code)", con)
    cmd.Parameters.Clear()
    cmd.Parameters.AddWithValue("m_Date", txtdate.Text)
    cmd.Parameters.AddWithValue("Animal_Code", ddlAnimalCode.SelectedValue)
    con.Open()
    cmd.ExecuteNonQuery()
    con.Close()
    Label1.Text = "All Records are Saved Successfully"
    btnInsert.Enabled = False
Next
4

1 に答える 1

0

次のコードを試してください.次のようにrowdataboundイベントでドロップダウンの選択されたインデックスを設定してみてください...

protected void GridView1_RowDatabound(object sender, GridViewRowEventArgs e)
        {

            if (e.Row.RowType == DataControlRowType.DataRow)
            {
                DropDownList drpdwnList = ((DropDownList)e.Row.FindControl("DropDownlist1"));                   
                drpdwnList.SelectedIndex=e.Row.RowIndex;
            }
        }

**私はこれを C# で書きました。Vb で同じものを書く必要があります。

于 2012-10-03T06:46:14.587 に答える