2011-01-07 17 views
0

をASP.NET 4で選択すると、セクションにDropDownListを含むGridViewが表示されます。 DropDownListは、2番目のデータソースから必要なすべてのオプションを設定しています。しかし、GridViewに既にあるデータに基づいて、各行の各DropDownListにデフォルトで異なるSelectedIndexが設定されるようにしたいと思います。例えばDropDownListをGridViewに選択して、GridView BoundField

は、ここでのサンプルデータ

ある
| id |  Status | hidden | First Name | 
-------------------------------------------------- 
| 12 | <dropdown> |  3 | john doe | 
| 13 | <dropdown> |  7 | jane ble | 

ので、私はそれが設定されている意味、隠されている第三の列に注意しますする:この列に

<asp:BoundField DataField="StatusName" HeaderText="Status" Visible="false" /> 

しかし、編集された行デフォルトで表示するDropDownListが必要な値()が含まれています。言い換えれば

私は、適切なインデックスが「隠し」フィールドの数に基づいて選択する必要があり

<option select="selected">something</option> 

を必要としています。

おそらく何ですか?

+0

は、DropDownListコントロールASP DropDownListのですか、それは単なるhtmlです静的な選択肢でリストを選択しますか? – patmortech

+0

申し訳ありません

答えて

2

あなたは、ドロップダウンリストで正しい値を選択するためにRowDataBoundイベントをサブスクライブすることができます

protected void myGrid_RowDataBound(object sender, GridViewRowEventArgs e) 
{ 
    DropDownList lst = null; 
    string hiddenStatus = string.Empty; 

    if (e.Row.RowType == DataControlRowType.DataRow) 
    { 
     hiddenStatus = e.Row.Cells[2].Text; 
     lst = (DropDownList)e.Row.FindControl("dropDownIdentifier"); 

     lst.SelectedValue = hiddenStatus; 
    } 
} 

- パベル

+0

ありがとうございました。 –

関連する問題