我創建了一個繼承自TreeView
的類,並且我想在創建樹時創建一些節點。因此我重寫了OnCreateControl
方法並將init代碼寫入此方法。winform設計器自動生成執行控制方法?
爲什麼OnCreateControl
方法已經執行時,我將控件拖到窗體設計器?
我該如何阻止這種行爲?
我創建了一個繼承自TreeView
的類,並且我想在創建樹時創建一些節點。因此我重寫了OnCreateControl
方法並將init代碼寫入此方法。winform設計器自動生成執行控制方法?
爲什麼OnCreateControl
方法已經執行時,我將控件拖到窗體設計器?
我該如何阻止這種行爲?
使用DesignMode屬性來確定,如果你的控件在運行或VS設計師創建:
protected override OnCreateControl()
{
base.OnCreateControl();
if (!this.DesignMode)
{
// your code here
}
}
[請注意警告](http://stackoverflow.com/questions/4346361/winform-custom-control-designmode-doesnt-return-true-whereas-in-design-mode)。 –
謝謝,這很有幫助。 – Hourglass
你可以用'Control.DesignMode'在設計師或沒有時就知道了。 –
@ASh請記住,您需要> 3個重複點才能添加圖像。 –
@沙漏向我們展示您的代碼 –