2012-03-28 3 views
0

사용자가 캔버스에서 컨트롤의 순서를 변경할 수있는 상황이 있습니다. 그런 다음 데이터로 채워지며 많은 인스턴스가 플로우 문서에 배치됩니다. 그것을 얻을 수있는 권리는 무엇일까? 변경 후 동적으로 usercontrol을 생성 한 다음 흐름 문서에 많은 인스턴스를 배치해야한다고 생각했습니다. 하지만 난 동적으로 사용자 정의 컨트롤을 만드는 방법을 몰라. 도와주세요.런타임에 usercontrol 만들기

+1

어떤 종류의 컨트롤입니까? C# '코드 숨김'에서 이러한 컨트롤을 선언하고 캔버스/스택 패널 등에 추가 했습니까? – SkonJeet

+0

귀하의 질문에 약간 혼란 스럽습니다. 성취하려는 것은 무엇입니까? 코드에서 어떤 종류의 컨트롤을 만들려고합니까? – Dylan

답변

0

WPF의 모든 컨트롤은 여전히 ​​클래스의 인스턴스입니다. 사용자 조정 유형이 SuperControl이라고 가정 해 보겠습니다. 그런 다음 코드에서 생성하려면 다음을 수행하십시오.

var u1 = new SuperControl(); //create a control's instance 

u1.Height = 100; //Optionally assign properties to 
u1.Width = 100; //configure the control 

mainGrid.Children.Add(u1); //Place it on a layout element. 
+0

필자는 전에 usercontrol 빌드를 가지고 있지 않습니다. 이 방법을 사용하여 캔버스를 사용자 정의 컨트롤로 변환 할 수 있습니까? –

+0

Canvas에서 상속받은 새로운 클래스를 만들고 필요한 사용자 정의 작업을 수행 할 수 있습니다. 말하자면 MyModifiedCanvas라고합니다. 그런 다음 인스턴스를 만들고 예제에 표시된 것과 같은 레이아웃 요소에 배치 할 수 있습니다. –

+0

감사합니다. Maxim. 부모 캔버스 컨트롤의 특정 위치에 컨트롤을 배치하는 방법 –

관련 문제