-3

VC9 & Visual Studio 2008 Express를 사용하여 직접 compenents를 만들고 싶습니다. 현재 내 최상위 Form 클래스에는 내 좋아하는 코드가 너무 많아서 커지려고합니다.Visual C++ 2008 Express, 개별 GUI 요소를 별도의 파일로 캡슐화하십시오.

나는 Project-> Add-> Component_Class까지 안전하게 갈 수 있습니다.

다음으로 텍스트 상자, 제출 단추 및 패널을 사용하여 아래에있는 서식있는 텍스트 상자에 주석을 (전체, 팀, 상대방에게) 제출할 수있는 다른 채널의 탭을 나타내도록 이름을 지정하고 채 웁니다. 선택한 탭에 따라 업데이트됩니다.

만 문제는 내 하위 구성 요소에 대한 위치 설정에 올 때 나는

#pragma region Windows Form Designer generated code 
    /// <summary> 
    /// Required method for Designer support - do not modify 
    /// the contents of this method with the code editor. 
    /// </summary> 

을 위반하고있다.

저와 저는이 새로운 구성 요소를 도구 상자에 넣을 수 없습니다.

VC++ 2008 Express에서 가능합니까?

_ 편집 _ 그래서 나는이, http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=151764&SiteID=1 조언을 따라 내 도구 상자에서 구성 요소를 얻었다.

문제는 지금은 시도 할 것이다

시스템보다 더 실질적인 클래스를 확장하기 위해 이미지리스트 양식 디자인 영역 :(떨어져 자신의 줄에 앉아있는 것처럼 단지 'unvisual'입니다 :: ComponentModel :: 구성 요소

_ 편집 _

나는 그 자신에게이 질문에 답을하고 나중에 참조 할 수 있도록 제목과 태그를 정리했다.

+0

Windows Forms는 .NET의 WinForms를 말합니다. 그래서 이것은 C++가 아닙니다. –

+0

@nicol C++/CLI는 .net의 것입니다. –

+0

Nicol - 관리되는 C++로 Windows Forms를 작성할 수 있기 때문에, 그 문장에서 완전히 올바르지는 않습니다. 즉, 이것이 C# 질문이라는 것이 맞다고 생각합니다. – iandotkelly

답변

0

, 나는 VC++에서 2008 년

당신은 양식 디자이너를 사용하지 않는를 사용자 정의 구성 요소를 만들 수 있지만 프로그래밍 방식으로 수행해야하는 방법을 발견했다. 글쎄, 나는 속임수를 쓰고, Form Designer로 처음 만들었던 proto-mock-up에서 대부분의 코드를 얻었습니다.

이 정보의 소스는 제가를 사용하여 시각적 구성 요소로 추가 할 수 있었다 내 프로젝트에 위의 LINKE에 나와있는 예제 코드를 추가하여 SDK의 UserControl을 클래스에 대한 문서,

http://msdn.microsoft.com/en-us/library/system.windows.forms.usercontrol%28v=VS.90%29.aspx

했다

선택하여 양식 디자이너 "도구> 옵션> 윈도우 디자이너> 일반 양식 : AutoToolboxPopulate"

지금은 자신의 클래스에 내 모든 GUI 코드를 오프로드했습니다 일반적으로 나는 몇 가지 다른 형태의 구성 요소를 확장하는 클래스를 선언하는

#using <System.dll> 
#using <System.Drawing.dll> 
#using <System.Windows.Forms.dll> 

using namespace System; 
using namespace System::Windows::Forms; 
using namespace System::Drawing; 
using namespace System::ComponentModel; 
namespace myProjNS { 전에

및 절차에 따라 추가 할 수 있습니다.

위 답변의 장점에 감사 드리지만 질문을 할 당시 제한된 시스템에서 사용할 수없는 C#이 필요합니다.

0

다음 문서는 Visual Studio 및 C#에서 사용자 지정 컨트롤을 만드는 것에 대한 내용으로 유용하다고 생각합니다. 이 VS/C 번호의 이전 버전에있을 수 있습니다 것 같습니다,하지만 윈도우는 물건 당신은 Windows Forms의 대안으로 WPF 응용 프로그램을 작성하는 것을 고려할 수 있습니다

http://www.akadia.com/services/dotnet_user_controls.html

어쨌든 꽤 오래된 양식 - 이것이 Windows 용 데스크톱 응용 프로그램을 빌드하는 데 필요한 최신 기술이며 Silverlight와 같은 다른 Microsoft 도구와 일부 기술이 공유됩니다.

http://www.abhisheksur.com/2011/07/writing-reusable-custom-control-in-wpf.html

업데이트 :

그리고 여기 당신이 관심이 있다면 WPF에서 사용자 지정 컨트롤을 빌드하는 방법에 대한 튜토리얼입니다 그래서 VS2008Express의 기능을보고 - 당신은 WPF를 할 수 없습니다 사용자 지정 컨트롤을 제공하므로 환경에 제한적이라면 Windows Forms를 사용해야 할 것입니다. 튜토리얼은 위에 있습니다.사람이 관심이 있다면

+0

WPF는 미숙하고 VS2008Express를 사용하는 것은 더 미성숙합니다. VS2010은 C++ 자동 완성 기능을 제공하지 않습니다. 흠,이 링크는 특히 Express 또는 C++에 대한 것이 아닙니다. http://stackoverflow.com/questions/86562/what-is-missing-in-the-visual-studio는? -2008-express-editions? – John

+0

당신의 애플 리케이션, 귀하의 의견은 중요한 것입니다 - 서면으로 작성하고 지원해야합니다. 가치가있는 부분에 대해 WPF는 미성숙 한 것으로 나를 공격하지 않습니다. about C++ autocompletes. – iandotkelly

+0

C++은 VS2010에서 코드/자동 완성을하지 못했습니다! 따라서 2008 C++ 용 edn. C# wpf vs2010 maze 튜토리얼을 시도해 보았을 것입니다. 내 고전 XP 테마는 던져 버렸지 만 무서워 보였습니다. – John

관련 문제