Binden einer dropdownlist und dann hinzufügen ein neues listitem

Ich habe eine DropDownList die ich initialisieren in eine Funktion namens CreateChildControls vor dem hinzufügen der Controls Sammlungen. Ich überschreiben dann die Render() Methode und dann machen die DropDownList. Die web-Teil erbt von System.Web.UI.WebControls.WebParts.WebPart.

Ich Binde die DropDownList in meinem web-Teil wie dieses:

private void BindClientTypes()
{
    DataTable dt = DB.GetAllClientTypes();

    if (dt == null)
    {
        ltGlobalErrorMsg.Text = GlobalErrorMessage;
        ltGlobalErrorMsg.Visible = true;
    }
    else
    {
        ddlClient.DataSource = dt;
        ddlClient.DataValueField = "ID";
        ddlClient.DataTextField = "Name";
        ddlClient.DataBind();
        ddlClient.Items.Insert(0, PleaseSelectItem);
    }
}

Wenn ich versuchen, die SelectedIndex des DropDownList nach dem Aufruf DataBind, bekomme ich eine Fehlermeldung die sagt das Steuerelement können nicht mehrere ausgewählte Elemente.

Code funktioniert einwandfrei, und ich kann die SelectedIndex nachdem die Daten binden, wenn ich diese Zeile auskommentieren:

ddlClient.Items.Insert(0, PleaseSelectItem);

Kann mir jemand erklären, warum das nicht funktionieren würde?

Dank.

InformationsquelleAutor iJK | 2009-11-21

Schreibe einen Kommentar