0

我有一個C++/CLI項目,它有一個子窗體與一些控制組件。我想將所有控制組件和它們的代碼複製到主窗體上的新Tab控件上。我怎樣才能做到這一點?複製控制組件

+0

只要重複你所做的過程。如果這是C#,我會建議使用用戶控件。你可以做這樣的事情,儘管我懷疑在C++/CLI中是有代價的。 – 2012-02-16 18:42:25

回答

1

您可以在設計師(按住移位鍵可進行多選),選擇所有的控件,然後將其剪切並粘貼到新位置:按Ctrl + X按Ctrl + V

或者,你可以打開一個由Windows窗體設計器自動生成*.Designer文件和代碼中的相關行指出,文件複製到其他代碼文件。查找在您感興趣的控件上創建和設置屬性的代碼。對於在設計器中設置爲其非默認值的控件的每個屬性,此文件中都會有一行代碼。

如果,而不是從一個地方移動(切割)的控制到另一個,要副本的控制,使他們出現在多個地方,我強烈建議建立一個UserControl包含所有子控制和封裝相關的代碼。然後,您可以將此自定義UserControl的實例從您的工具箱中刪除,無論您想要什麼形式,或者甚至在運行時動態創建實例。這與一般的編程/設計原則是一致的,您應該儘可能地儘可能地封裝代碼,以儘量減少代碼重複。