La liaison d'une DropDownList à l'intérieur d'un DetailsView

Je vais avoir des problèmes en essayant de remplir une liste déroulante à partir de la base de données. Quand je suis en train de définir la source de données que je ne trouve pas le menu déroulant, c'est dans un DetailsView donc je pense qu'il pourrait avoir quelque chose à faire avec elle seulement en cours de création quand il est en mode édition. Il dit encore qu'il est en mode courant, quand je suis en train de monter, donc pas sûr de ce qui se passe là-bas.

Voici le code à partir du fichier aspx:

<asp:DetailsView id="DetailsView1" runat="server" AutoGenerateRows="false" DataSourceID="myMySqlDataSrc"  DataKeyNames="id" AutoGenerateDeleteButton="True" AutoGenerateEditButton="True" AutoGenerateInsertButton="False" >
     <Fields>
        <asp:TemplateField HeaderText="Region">
            <ItemTemplate><%# Eval("region_name") %></ItemTemplate>
            <EditItemTemplate>
                <asp:DropDownList ID="RegionDropdownList" runat="server" SelectedValue='<%# Bind("region_id")%>' />
            </EditItemTemplate>
        </asp:TemplateField>        
     </Fields>
</asp:DetailsView>

Et c'est à partir du code-behind:

ArrayList regionsList = BPBusiness.getRegions();
if (DetailsView1.CurrentMode == DetailsViewMode.Edit)
{
    DropDownList ddlRegions = (DropDownList)DetailsView1.FindControl("RegionDropdownList");
    if (ddlRegions != null)
    {
        ddlRegions.DataSource = regionsList;
        ddlRegions.DataBind();
    }
}
Quelle méthode est-ce que votre échantillon à partir du code derrière existent?
C'est dans le Page_Load.

OriginalL'auteur annelie | 2010-04-23