ASP: DropDownList en ItemTemplate: ¿Por qué se permite el atributo SelectedValue?
Esta pieza de código
<asp:DropDownList runat="server" ID="testdropdown" SelectedValue="2">
<asp:ListItem Text="1" Value="1"></asp:ListItem>
<asp:ListItem Text="2" Value="2"></asp:ListItem>
<asp:ListItem Text="3" Value="3"></asp:ListItem>
</asp:DropDownList>
produce este error:
La propiedad 'SelectedValue' no se puede establecer de forma declarativa.
Sin embargo, esta es una plantilla de edición legal y de uso común para GridViews enlazadas a datos. LosSelectedValue
atributo ciertamente parece estar establecido declarativamente aquí.
<EditItemTemplate>
<asp:DropDownList runat="server"
ID="GenreDropDownList"
DataSourceID="GenreDataSource"
DataValueField="GenreId"
DataTextField="Name"
SelectedValue='<%# Bind("Genre.GenreId") %>'>
</asp:DropDownList>
</EditItemTemplate>
La pregunta es: ¿cuál es la diferencia entre los casos en que se le permite establecerlo declarativamente y aquellos en los que no se encuentra? El mensaje de error implica que nunca está permitido.