J'ai un contrôle DropDownList dans un EditItemTemplate pour une vue détails définie comme ceci:événement ASP.NET OnDataBinding pour EditItemTemplate DropDownList
<asp:TemplateField HeaderText="Primary Use">
<EditItemTemplate>
<asp:DropDownList ID="ddlPrimaryUseEdit" runat="server" OnDataBinding="DropDownList_DataBinding"
SelectedValue='<%# Bind("PrimaryUse") %>' ToolTip="Primary Use">
<asp:ListItem Value="">Unknown</asp:ListItem>
<asp:ListItem>Manufacturing Facilities</asp:ListItem>
<asp:ListItem>Residential</asp:ListItem>
<asp:ListItem>VSSM Office</asp:ListItem>
<asp:ListItem>Engineering/Office/Warehouse</asp:ListItem>
<asp:ListItem>Vacant/Surplus Land</asp:ListItem>
</asp:DropDownList>
</EditItemTemplate>
J'ai une source de données definded comme une requête à ma base de données qui a une colonne nommée "PrimaryUse". Parfois, il peut y avoir une valeur dans la colonne PrimaryUse qui n'est pas répertoriée comme l'un des éléments de la liste déroulante et mon application se bloque lorsque vous essayez de lier la valeur sélectionnée de la liste déroulante à ce champ. J'essaie de créer du code dans l'événement OnDataBinding de edititemtemplate qui va vérifier si la valeur renvoyée par la source de données est une valeur valide listée comme un élément dans les options dropdownlist. Mon problème est que je ne suis pas sûr de savoir comment obtenir la valeur de champ datasources pour cette colonne dans le code derrière. Est-ce possible? Est-ce le cas, quelqu'un peut-il me donner un exemple ou me pointer dans la direction sur la façon de faire cela?
Ainsi, en cas OnDataBinding pour le EditItemTemplate énumérés ci-dessus, je voudrais faire quelque chose comme ce qui suit (code psuedo):
if datasource.datafieldvalue("PrimaryUse") is in dropdownlist.Items then Valid
else set dropdownlist.Selectedvalue = "Default"
quelle langue utilisez-vous? –
vb.net serait ma conjecture, car il a le (si, alors, d'autre) passe, mais encore une fois son pseudocode – curtisk