ho una dropdownlist in un usercontrol.
in una pagina (paginachiamante) in cui chiamo questo uc devo assegnare il selectedvalue alla ddl dello uc.

ma succede una cosa che non capisco.
quando carica la paginachiamante carica la ddl dello uc senza che io chiami la funzione che carica il ddl, e fin qui tutto liscio.
successivamente, nella load della paginachiamante chiamo una funzione che estrae dei dati da un db e riepie dei campi, tra cui VORREI che selezionasse il valore della ddl dello uc.

e faccio una cosa di questo genere
codice:
Dim m_Funzioni As New uc_ddl_lingue
m_Funzioni.ShowDdlLingue("EN")
facendo il debug, entra correttamente nello us e nella funzione che carica la ddl ma dove c'è riferimento al nome del controllo da errore "riferimento ad un oggetto non impostato su un'istanza d'oggetto."

Perchè??!!!
il controllo ddl dello usercontrol è già caricato, perchè non lo trova?

Codice uc:
codice:
Imports System.Data.SqlClient

Public Class uc_ddl_lingue
Inherits System.Web.UI.UserControl

#Region " Codice generato da Progettazione Web Form "

'Chiamata richiesta da Progettazione Web Form.
<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()

End Sub
Protected WithEvents ddl_lingue As System.Web.UI.WebControls.DropDownList
Protected WithEvents lbl_conferma_uc_ddl_lingue As System.Web.UI.WebControls.Label

'NOTA: la seguente dichiarazione è richiesta da Progettazione Web Form.
'Non spostarla o rimuoverla.
Private designerPlaceholderDeclaration As System.Object

Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
'CODEGEN: questa chiamata al metodo è richiesta da Progettazione Web Form.
'Non modificarla nell'editor del codice.
InitializeComponent()
ShowDdlLingue("")
End Sub

#End Region

Public Sub ShowDdlLingue(ByVal LangSel As String)
Dim j As Int16
Dim SqlLang As String = "select uid, langName from SS_LINGUE;"
Dim DR As SqlDataReader
'apro connessione
Dim objDB As New DBAccess.ADOObject
Dim Conn As SqlConnection = objDB.ApriConn
'----------------
MyCommandSQL = New SqlCommand(SqlLang, Conn)
Try
    Me.ddl_lingue .Items.Add("<seleziona>")
    Me.ddl_lingue.Items.Item(j).Value = ""

    DR = MyCommandSQL.ExecuteReader
    If DR.HasRows Then
	j = 1
	Do While DR.Read
	    Me.ddl_lingue.Items.Add(DR("langName"))
	    Me.ddl_lingue.Items.Item(j).Value = DR("uid")
	    Me.ddl_lingue.Visible = True
	    j += 1
	Loop
    End If
Catch ex As Exception
    Me.lbl_conferma_uc_ddl_lingue.Text = "

Si è verificato un errore!
Se l'errore persiste contattare il webmaster</p>

CaricaLingue()
" & Err.Description & "</p>"
End Try
objDB.ChiudiConn(Conn) 'chiudo connessione
ddl_lingue.SelectedValue = LangSel
End Sub
End Class
praticamente la seconda volta che ci passa da errore dove è scritto rosso.

io non capisco......