Controllo utente e Windows Form

Qual è la differenza tra un controllo utente e un modulo di Windows in Visual Studio – C #?

Metti molto semplicemente:

I controlli utente sono un modo per creare un componente personalizzato e riutilizzabile. Un controllo utente può contenere altri controlli ma deve essere ospitato da un modulo.

I moduli di Windows sono il contenitore per i controlli, inclusi i controlli utente. Sebbene contenga molti attributi simili come controllo utente, lo scopo principale è quello di ospitare i controlli.

Hanno molto in comune, entrambi derivano da ContainerControl. Tuttavia, UserControl è progettato per essere una finestra figlio, deve essere inserito in un contenitore. Il modulo è stato progettato per essere una finestra di livello superiore senza un genitore.

È ansible trasformare una maschera in una finestra secondaria impostando la proprietà TopLevel su false:

public partial class Form1 : Form { public Form1() { InitializeComponent(); var child = new Form2(); child.TopLevel = false; child.Location = new Point(10, 5); child.Size = new Size(100, 100); child.BackColor = Color.Yellow; child.FormBorderStyle = FormBorderStyle.None; child.Visible = true; this.Controls.Add(child); } } 

Un modulo di Windows è un contenitore per i controlli utente.

La più grande differenza è form.show dà una finestra diversa mentre usercontrol non ha funzionalità come spuntare senza un genitore. Le cose a rest sono le stesse in entrambi i controlli come beind derivato da Scrollablecontrol.