Não é possível carregar o DropDownList no FormView a partir do código?
Eu tenho um UserControl, contendo um FormView, contendo um DropDownList. O FormView está vinculado a um controle de dados.
Igual a:
<asp:FormView ID="frmEdit" DataKeyNames="MetricCode" runat="server" DefaultMode="Edit" DataSourceID="llbDataSource" Cellpadding="0" >
<EditItemTemplate>
<asp:DropDownList ID="ParentMetricCode" runat="server" SelectedValue='<%# Bind("ParentMetricCode") %>' />
</EditItemTemplate>
<asp:FormView>
Eu estou tentando preencher o DropDownList do code-behind. Se isso não estivesse contido em um FormView, normalmente faria apenas no evento Page_Load. No entanto, isso não funciona em um FormView, assim que tento fazê-lo, acessando a lista suspensa no código, ou seja:
theListcontrol = CType(formView.FindControl(listControlName), ListControl)
... o mecanismo de ligação de dados do FormView é chamado, o que, obviamente, tenta vincular o DropDownList à fonte de dados subjacente, fazendo com que ** 'ParentMetricCode' tenha um SelectedValue inválido porque não existe na lista de Itens. Erro "Nome do parâmetro: valor ...", pois o DropDownList ainda não foi preenchido.
Tentei executar a carga no evento DataBinding () do FormView, mas depois:
theListcontrol = CType(formView.FindControl(listControlName), System.Web.UI.WebControls.ListControl)
... falha, pois o FormView.Controls.Count = 0 nesse momento.
Isso é impossível? (Não quero ter que usar um ObjectDataSource secundário para vincular a lista suspensa)