Ho bisogno di creare un'istanza di Winform all'interno di un altro progetto. Come è fatto? Attualmente sto tentando di collegare il costruttore predefinito. Sembra che il mio costruttore personalizzato non venga chiamato.Come si utilizza un costruttore personalizzato in un WinForm?
Inoltre .. il punto di ingresso per questa applicazione non sarà nel progetto che possiede questo modulo. Significato il seguente non verrà eseguito:
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new HtmlTestForm());
Non sono del tutto sicuro di cosa stia facendo questo codice. La forma funzionerà ancora?
private HtmlTestForm()
{
InitializeComponent();
OpenBrowser(new Uri(TestURL));
}
public HtmlTestForm(Uri uri)
:this()
{
TestURL = uri;
}
// Nuovo modulo in un altro progetto.
HtmlTestForm form = new HtmlTestForm(new Uri("http://SomeUri.html"));
Un po 'di "magia" coinvolta è che i moduli vengono creati automaticamente dal designer di Windows Form ... che richiede un costruttore senza parametri, credo. –
@Jon: No, non è così. Il designer crea un'istanza del modulo solo se si apre un modulo che eredita da esso in visualizzazione Struttura. Se non si eredita dal modulo, non è necessario un costruttore senza parametri. – SLaks
cavolo, questa è una buona notizia. Modifica la risposta quando ne ho la possibilità. –