使用类创建包含属性的新按钮

时间:2012-03-05 18:50:46

标签: c# wpf

如何在堆栈面板上创建一个新按钮,可能在类文件中

 public static void addbtn()
    {
        Page1 p1 = new Page1();
        Button btn = new Button();
        p1.stackPanel1.Children.Add(btn);
    }

我确定这不是正确的,同时我如何给它一个事件处理程序。

我的目标是在form1上创建一个按钮,只需单击form2中的按钮。

请帮我解决这个问题。谢谢!

2 个答案:

答案 0 :(得分:1)

您的代码应该有效。您可以向Button添加属性/事件,如:

Button btn = new Button();
btn.Content = "Press me";
btn.Click = (sender, e) => { *your handling code* };

答案 1 :(得分:1)

您正在将按钮添加到刚刚创建的Page1对象中,该对象可能不是向用户显示的对象。

如果您在定义Page1本身的同一个类中,则可以使用

this.stackpanel1.children.add(btn)

虽然注意这必须是实例方法而不是静态方法,否则它将不知道“this”指的是什么。

如果这不是同一个类,那么你必须向它传递一个对你想要添加按钮的对象的引用。像这样:

public static void addbtn(Page1 p1)
{
    Button btn = new Button();
    p1.stackPanel1.Children.Add(btn);
}

并且您将传递要添加按钮的Page1的实际实例。