2016-01-31 25 views

Odpowiedz

6

Set FormBorderStyle do FormBorderStyle.Sizable lub FormBorderStyle.SizableToolWindow i ustawić Text na pusty ciąg znaków, a ControlBox do false

Zauważ, że FixedToolWindow nie zadziała, to będzie usunąć granicę. Jeśli nie ma to być spory, użyj SizableToolWindow i dodać do formularza w kodzie (dodawanie w obu językach, ponieważ nie określono i oznaczone na pytanie z obu):

w VB.NET:

Protected Overrides Sub WndProc(ByRef message As Message)    
    If message.Msg = &H84 Then ' WM_NCHITTEST 
     message.Result = CType(1, IntPtr) 
     Return 
    End If  
    MyBase.WndProc(message) 
End Sub 

W języku C#:

protected override void WndProc(ref Message message) 
{ 
    if (message.Msg == 0x0084) // WM_NCHITTEST 
     message.Result = (IntPtr)1; 
    else base.WndProc(ref message); 
} 
+0

ukrywa granicę postaci całkowicie. Działa tak samo, jak ustawienie 'FormBorderStyle' na' FormBorderStyle.None'. –

+0

@Brennced nie, nie robi, właśnie zrobiłem test, i pokazuje granicę, dokładnie tak, jak okno Dropbox – Jcl

+0

Nieważne. Zapomniałem usunąć kod, który ukrywa krawędź formularza. Dziękuję za szybką odpowiedź. –