2010-07-04 9 views
1

J'essaie d'obtenir une liste déroulante et une vue de formulaire pour travailler ensemble. Je n'ai jamais utilisé de vues de formulaire auparavant. J'utilise aussi le framework d'entité pour tout faire. C'est aussi ma première fois avec ça.Sélectionnez un élément dans la vue de formulaire en fonction de l'élément sélectionné de la liste déroulante.

Je veux être en mesure d'avoir une liste déroulante, qui est remplie à partir de la même source de données que la vue formulaire. Jusqu'à présent, cela fonctionne bien. Je veux ensuite être en mesure de modifier l'élément déroulant, et il change l'élément de vue formulaire qui est affiché. Je ne peux pas comprendre comment faire ce travail.

Répondre

0

J'ai trouvé une réponse qui fonctionnera. Sur la source de données de l'infrastructure d'entité, j'ai inclus un paramètre where qui est un contrôle pointant vers le menu déroulant. Donc, quand je change la liste déroulante, j'ai un gestionnaire d'événements qui met la vue en mode inséré si rien n'a été sélectionné ou en mode lecture seule si j'ai sélectionné quelque chose. Je ne sais pas si c'est la meilleure façon, mais ça fonctionne bien pour l'instant. Plus tard, je vais essayer d'en savoir plus sur l'utilisation des vues de formulaire pour voir comment les autres les utilisent.

0

Si vous définissez le

<asp:DropDownList AutoPostBack="True" OnSelectedIndexChanged="ddlType_SelectedIndexChanged" ... /> 

Ensuite, vous pouvez avoir un gestionnaire d'événements dans le code derrière REBIND DataSource pour votre mode formulaire.

ddlType_SelectedIndexChanged(object sender, EventArgs e) 
{ 
    // rebind your Form View from here. 
} 
0

Vous pouvez gérer le SelectedIndexChanged de la liste déroulante. Ensuite, vous pouvez accéder à l'élément à l'intérieur de la vue du formulaire comme suit:

(Label)fvCourseInstance.FindControl("lblDropDownValue").Text = ddlYourDropDown.SelectedValue