所以我创建了XAML按钮(由一个矩形>右键单击>创建控制>按钮)如何在C#中添加一个XAML按钮
我可以添加它,当我在Expression Blend中的XAML设计部分,但我不知道如何以编程方式在C#中创建它们。
认为我命名的新按钮btn_openRecent,然后我想做的事情是这样的:
btn_openRecent newBtn = new btn_openRecent();
我能做到这一点?如果这有什么不同,我将它作为应用程序资源保存。
谢谢!
所以我创建了XAML按钮(由一个矩形>右键单击>创建控制>按钮)如何在C#中添加一个XAML按钮
我可以添加它,当我在Expression Blend中的XAML设计部分,但我不知道如何以编程方式在C#中创建它们。
认为我命名的新按钮btn_openRecent,然后我想做的事情是这样的:
btn_openRecent newBtn = new btn_openRecent();
我能做到这一点?如果这有什么不同,我将它作为应用程序资源保存。
谢谢!
你的CustomButton是A UserControl
或定制Template
常规按钮如果它是一个用户控件,您可以使用
MyCustomButton newBtn = new MyCustomButton();
如果它是一个模板(更可能的场景)y ou会创建一个常规按钮并应用样式或模板
Button newBtn = new Button();
newBtn.Template = (ControlTemplate)FindResource("MyCustomButtonTemplate");
// Or if your Template is defined in a Style
newBtn.Style= (Style)FindResource("MyCustomButtonStyle");
在XAML中,您声明类Button
的实例,并将值分配给某些属性。所以,在XAML创建为
<Button Click="OnClick">Test</Button>
对象可以在C#创建为
Button b = new Button();
b.Content = "Test";
b.Click += OnClick;
如果你已经把东西放到应用程序的资源,您可以通过使用
Button b = (Button)Application.Current.Resources["key"];
得到它
但我不会推荐这种技术,因为按钮不能重复使用一次以上。
请注意,通常XAML还有另外一个用途:将控件放入另一个控件中。因此,像
<Grid>
<Button>Test</Button>
</Grid>
的代码在C#中表示为
Grid g = new Grid();
Button b = new Button();
b.Content = "Test";
g.Children.Add(b);
“但我无法弄清楚如何以编程方式在C#中”。 创建它们?与他们互动? –
err ...创建它们* – Toadums