2016-10-11 1 views
1

이 아래쪽에있는 내 구문입니다. 실제로는 앱 실행기를 만들고 있는데, exe 파일을 선택하면 새로운 시작 버튼이 있지만이 코드를 실행 한 후에는 응답이 전혀 없기 때문에 새로운 버튼을 만들기위한 코드를 찾았지만 동일했습니다. 이 내 코드가 추가하지 않았기 때문에C#에서 새 버튼을 만들려고하는데 내 구문이 올바르지 않다고 생각합니다.

private void AddNewAppBtn_Click(object sender, RoutedEventArgs e) 
{ 
    Functions.addApp(); 
    Button appButton = new Button(); 
    appButton.Content = "Click Me"; 
    appButton.Name = "ButtonA"; 
    var stackPanel = new StackPanel { Orientation = Orientation.Vertical }; 
    stackPanel.Children.Add(appButton); 
} 
+0

StackPanel은 어디에 사용됩니까? –

답변

1

당신의 Stackpanel 당신이 동적으로 생성 Stackpanel을 갖고 싶어 메인 Grid 또는 다른 레이아웃. 먼저 다음과 같은 주요 Grid 이름을 지정 :

XAML : 아니,

mainGrid.Children.Add(stackPanel); 
+2

제공된 코드에서 어떻게 알 수 있습니까? –

+0

@ R.Rusev 명백히 OP는 StackPanel을 동적으로 만들었습니다. 그래서 그는 그의 주요 레이아웃의 자녀가 아닙니다. –

+0

그러나 그는 당신이 그 사실을 확신 할 수 없도록 함수의 전체 코드를 보여주지 않았습니다. 네가 옳다고 생각 하긴하지만. –

1

는 그냥 XAML 내부의 버튼을 만들 :

<Grid Name="mainGrid"> 

그런 다음 코드의 끝 부분에이 줄을 추가 코드 숨김. 이 작업 만 수행하면 MVVM 패턴을 구현할 수 있으므로 유지 관리 부담이 줄어 듭니다.

XAML 코드 : <Button Content="MyButton"></Button>

아니면 CS 파일에 버튼을 만들려고합니다. 그것은 메인 그리드에 추가되어야합니다.

관련 문제