codice:
Dim src As String = "~/controlli_utente/orologio/orologio.ascx"
Dim c As Control = Me.LoadControl(src)
Dim asm As Assembly = Compilation.BuildManager.GetCompiledAssembly(src)
Dim t As Type = asm.GetType("orologio")
Dim p1 As PropertyInfo = t.GetProperty("aOraVisibile")
p1.SetValue(c, False, Nothing)
Me.Form.Controls.Add(c)
Questo codice funziona. La classe orologio ha una property booleana "aOraVisibile" che riesco a impostare mediante reflection.
Il problema nasce quando debbo impostare una property di tipo più complesso, per esempio Label.
In questo caso, il codice di sotto non funziona.
codice:
Dim p2 As PropertyInfo = t.GetProperty("aLabelOrario")
Dim l As New Label()
l.Font.Size = FontUnit.Point(36)
l.ForeColor = Color.Red
p2.SetValue(c, l, Nothing)
come si potrebbe fare?