0
protected DropDownList AddControldpd(int PrioridadeSelecionada)
{
    DropDownList prioridade = new DropDownList();
    prioridade.ID = PrioridadeID.ToString();
    PrioridadeID += 1;
    LoadPrioridade(prioridade);

    //Marcar Selecionados
    int ID;
    if (int.TryParse(HID.Value, out ID))
    {
        objTPTC.id = ID;
        objTPTC = objTPTCDAO.GetDetails(objTPTC, "B", PrioridadeSelecionada);
        if (objTPTC.id >= 0)
            prioridade.SelectedIndex = objTPTC.Prioridade;

    }
    DCHPrioriedade.Controls.Add(new LiteralControl("<label>Prioridade " + (PrioridadeID - 1).ToString() + "</label>"));
    DCHPrioriedade.Controls.Add(prioridade);
    DCHPrioriedade.Controls.Add(new LiteralControl("<br>"));
    return prioridade;
}

この関数を使用して新しいドロップダウンリストを追加し、オブジェクトを調べて selectedIndex がどうあるべきかを確認しています。

デバッグでobjTPTC.Prioridade = 1 と Inspect Element で確認できます

<option value="1" title="Filho de trabalhador da associação" carea="0">Filho de trabalhador da associação</option>

事前に選択したいオプションの値も1です

問題は、選択されたアイテムが常にこれであることです:

<option value="">Selecione uma opção...</option>
4

1 に答える 1

1

あなたの質問は明確ではありません。しかし、動的に追加されたコントロールのselectedindexchangeメソッドが機能していないと思いますか?. それが問題である場合、それを解決するには、動的に追加されたコントロールに postback=true を添付します。次に、選択したインデックスの変更が発生したときにのみイベントをトリガーします。次に、メソッドをselectedindexchangeイベントにバインドできます

編集

<option value="" selected="selected">hai</option>
<option value="" >hello</option>

その後、海は選択されたように表示されます

于 2013-06-27T11:20:54.763 に答える