萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> asp.net編程 >> .NET 解決TabControl 頁裡面多余邊距問題經驗分享

.NET 解決TabControl 頁裡面多余邊距問題經驗分享

以下是解決方法: 
1.直接新建一個類,繼承TabControl,然後 override DisplayRectangle 方法: 
復制代碼代碼如下:
/// <summary> 
/// 解決系統TabControl多余邊距問題 
/// </summary> 
public class FullTabControl : TabControl { 

public override Rectangle DisplayRectangle { 
get { 
Rectangle rect = base.DisplayRectangle; 
return new Rectangle(rect.Left - 4, rect.Top - 4, rect.Width + 8, rect.Height + 7); 



以後用 FullTabControl 就行。(這種方法簡單) 


2.參見以下網址(VB.NET)代碼: 

http://www.blueshop.com.tw/board/FUM20050124191756KKC/BRD201112281018075B8.html 

C# 代碼為: 

復制代碼代碼如下:
public class FullTabControl : NativeWindow { 
static int TCM_FIRST = 0x1300; 
static int TCM_ADJUSTRECT = (TCM_FIRST + 40); 
struct RECT{ 
public int Left, Top, Right, Bottom; 


protected override void WndProc(ref Message m) { 
if (m.Msg == TCM_ADJUSTRECT) { 
RECT rc = (RECT)m.GetLParam(typeof(RECT)); 
rc.Left -= 4; 
rc.Right += 3; 
rc.Top -= 4; 
rc.Bottom += 3; 

copyright © 萬盛學電腦網 all rights reserved