[c#] Rimuovere la barra del titolo in Windows Form



Answers

se per il Blue Border thats on top of the Window Form intendi la titlebar , imposta la proprietà ControlBox Form a false e la proprietà Text alla stringa vuota ("").

ecco un frammento:

this.ControlBox = false;
this.Text = String.Empty;
Question

Come posso rimuovere il bordo blu sopra il Window Form? (Non conosco il nome esattamente.)




 Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None



Aggiungi anche questo bit di codice al tuo modulo per permetterne il trascinamento.

Basta aggiungerlo subito prima del costruttore (il metodo che chiama InitializeComponent ()

private const int WM_NCHITTEST = 0x84;
private const int HTCLIENT = 0x1;
private const int HTCAPTION = 0x2;

///
/// Handling the window messages
///
protected override void WndProc(ref Message message)
{
    base.WndProc(ref message);

    if (message.Msg == WM_NCHITTEST && (int)message.Result == HTCLIENT)
        message.Result = (IntPtr)HTCAPTION;
}

Il codice proviene da: https://jachman.wordpress.com/2006/06/08/enhanced-drag-and-move-winforms-without-having-a-titlebar/

Ora per sbarazzarsi della barra del titolo, ma abbiamo ancora un bordo, unisci il codice dell'altra risposta:

this.ControlBox = false;

this.Text = String.Empty;

con questa linea:

this.FormBorderStyle = FormBorderStyle.FixedSingle;

Inserisci queste 3 righe di codice nell'evento OnLoad del modulo e dovresti avere un bel modulo 'mobile' che può essere trascinato con un bordo sottile (usa FormBorderStyle.None se non vuoi il bordo).






Links