2010-08-23 101 views

回答

5

如果有人感興趣...這似乎工作。緊湊型框架的另一個縮略。

public Form1() 
    { 
     InitializeComponent(); 

     ShowBorder(listView1.Handle, false); 
    } 

    private void ShowBorder(IntPtr handle, bool bShow) 
    { 
     int style = GetWindowLong(handle, GWL_STYLE); 
     if (bShow) 
     { 
      style |= WS_BORDER; 
     } 
     else 
     { 
      style &= ~WS_BORDER; 
     } 
     SetWindowLong(handle, GWL_STYLE, style); 
     SetWindowPos(handle, IntPtr.Zero, 0, 0, 0, 0, 
        SWP_NOMOVE | SWP_NOSIZE | SWP_FRAMECHANGED); 
    } 

    const int GWL_STYLE = -16; 
    const int WS_BORDER = 0x00800000; 
    const int SWP_NOSIZE = 0x1; 
    const int SWP_NOMOVE = 0x2; 
    const int SWP_FRAMECHANGED = 0x20; 

    [DllImport("coredll.dll")] 
    private static extern int GetWindowLong(IntPtr hWnd, int nIndex); 

    [DllImport("coredll.dll")] 
    private extern static void SetWindowLong(IntPtr hwnd, 
              int nIndex, int dwNewLong); 

    [DllImport("coredll.dll")] 
    private static extern bool SetWindowPos(IntPtr hwnd, 
              IntPtr hWndInsertAfter, 
              int x, int y, 
              int cx, int cy, int uflags); 
相關問題