2008-12-17 50 views
1

我有一個使用設計器的自定義控件,我從ParentControlDesigner繼承來允許刪除子控件。我沒有使用任何內部設計師,只是簡單單親的東西。如何在自定義WinForms控件中限制客戶端控制區

這種控制繪製一個「頭」,所以我試圖做三兩件事:

  1. 有子控件停靠在頭部,而不是控制的頂部底部,當設置爲頂部或填充。

  2. 當使用鼠標拖動而不是控件的頂部時,有子控件捕捉到標題底部。

  3. 防止控件被拖到頁眉區域,期間(我有一種感覺這可能是不可能的)。

(1)是最重要的 - 我知道這是可能的,因爲我見過其他控件。 (2)也將是一個主要的幫助。 (3)我不在乎那麼多,只是很高興。

任何人都可以指出我在如何實施這些規則的正確方向,沒有不得不求助於一個笨拙的子面板和InternalControlDesigner方法嗎?

回答

0

防止被拖動 到首標區控制,週期(I有一個 感覺這可能是不可能的)

具有控制(控制本身,而不是設計者)覆蓋Control.DisplayRectangle.get可能有助於限制其子女。