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.

questionAnswers(2)

yourAnswerToTheQuestion