2015-02-06 2 views
0

나는 창이 있으며, 버튼 ("CD"또는 "속성")을 누르면 내용이 변경되어 다른 Windows 양식을 열 수 없습니다. Show() 또는 ShowDialog()이 창C# WPF 콘텐츠 만 변경하는 방법은 무엇입니까?

[업데이트] : 솔루션

<StackPanel x:Name="Pane1" Visibility="Visible"/> 
<stackPanel x:Name="Pane2" Visibility="Collapsed" /> 

내가 버튼을 1 축소에 Pane1 가시성 chane, 그리고 눈에 보이는

+1

관련 코드가 없으면 대답하기가 어렵습니다. – Habib

+0

turoials 또는 someting을 찾을 수 없습니다. – user3793233

+1

"콘텐츠"란 무엇입니까? – itsme86

답변

0

양식을 컨트롤로 변경해야합니다. 양식은 창에 임베드되지 않고 열린 형태입니다.

그러면 기본 폼의 컨트롤을 관리 할 수 ​​있습니다. 가장 간단한 방법 :

void OnBtnClick(...) 
{ 
    List<Control> ctrls = new List<Control>(Controls); 

    Controls.Clear(); 

    foreach(Control ctrl in ctrls) 
     ctrl.Dispose(); 

    Controls.Add(new yourContrl()); 
} 

가이 일을 더 나은 방법이 있습니다,하지만 초보자의 관점에서이 원하는 일을 할 것입니다.

0

에 창 2 가시성 변화를 누를 때 당신은 당신의 정보를 가질 수 있습니다 패널 및 클릭 이벤트에서 양식 내용을 변경하기 위해이 패널을 숨기거나 숨길 수 있습니다.

2

버튼의 클릭 이벤트에서 창의 내용을 수정할 수 있습니다. 다른 컨트롤을 사용하여 새 폼을 여는 대신 컨트롤을 Panel에 놓고 필요할 때 보이거나 보이지 않도록 설정할 수 있습니다.

TabControl을 사용하고 버튼 클릭시 활성 페이지를 변경할 수 있습니다.

또는 새 컨트롤을 만들고 필요에 따라 폼에 추가하거나 제거 할 수 있습니다.

이 작업을 수행 할 수있는 가능성은 무한합니다. 질문을 좁히지 않으면 원하는 작업을 수행 할 수있는 무한한 방법이 있습니다.

+0

(글쎄, 실제로는 무한 ;-)) – Jcl

관련 문제