Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/entity-framework/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 我试图用C语言创建新的按钮,但我认为我的语法不正确_C#_Wpf_Button - Fatal编程技术网

C# 我试图用C语言创建新的按钮,但我认为我的语法不正确

C# 我试图用C语言创建新的按钮,但我认为我的语法不正确,c#,wpf,button,C#,Wpf,Button,这是我在底部的语法,实际上我正在制作一个应用程序启动器,每当我选择一个exe文件时,它都会为它创建一个新的启动按钮,但是在运行这个代码之后,我没有得到任何响应,我试着寻找创建新按钮的代码,但结果是一样的。 这是我的密码 private void AddNewAppBtn_Click(object sender, RoutedEventArgs e) { Functions.addApp(); Button appButton = new Button(); appButt

这是我在底部的语法,实际上我正在制作一个应用程序启动器,每当我选择一个exe文件时,它都会为它创建一个新的启动按钮,但是在运行这个代码之后,我没有得到任何响应,我试着寻找创建新按钮的代码,但结果是一样的。 这是我的密码

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);
}

因为您尚未将Stackpanel添加到主网格或其他布局中,您希望动态创建Stackpanel。首先,为主网格命名如下:

XAML:


只需在XAML中创建按钮,不需要任何代码。通过这样做,并且只有这样做,您才能实现MVVM模式,从而减少维护的痛苦

XAML代码:


或者您想在cs文件上创建一个按钮。应该将其添加到主网格中。

StackPanel在哪里使用?您是如何从提供的代码中发现的?@R.Rusev显然OP已经动态创建了StackPanel。所以这不是他的主布局的子项,但是他没有展示函数的全部代码,所以你不能确定这一点。尽管我认为你是对的。@R.Rusev我真的无法想象其他任何状态。
<Grid Name="mainGrid">
mainGrid.Children.Add(stackPanel);