ASP: DropDownList no ItemTemplate: Por que o atributo SelectedValue é permitido?
Este 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>
gera este erro:
A propriedade 'SelectedValue' não pode ser definida declarativament
No entanto, este é um modelo de edição legal e comumente usado para GridViews vinculados a dados. OSelectedValue
atributo @ certamente parece estar definido declarativamente aqu
<EditItemTemplate>
<asp:DropDownList runat="server"
ID="GenreDropDownList"
DataSourceID="GenreDataSource"
DataValueField="GenreId"
DataTextField="Name"
SelectedValue='<%# Bind("Genre.GenreId") %>'>
</asp:DropDownList>
</EditItemTemplate>
A pergunta é: qual é a diferença entre os casos em que você pode defini-lo declarativamente e aqueles em que você não é? A mensagem de erro implica que nunca é permitido.