我使用Expression Blend
创建了一个表单。之前我在Visual Studio中创建了一个,我可以使用Controls.Add()
添加自定义控件。一个例子如下。
Using SriClocks;
//////////////////////Blah blah
public Form1()
{
InitializeComponent();
SriClocks.DigitalClockCtrl clk = new DigitalClockCtrl();
clk.Size = new Size(500, 150);
clk.Show();
this.Controls.Add(clk);
clk.SetDigitalColor = DigitalColor.GreenColor;
}
当我使用表达式混合创建表单时,我无法使用上述方法向表单添加控件。通过
this.Controls.Add(**)有人可以让我知道如何完成这项任务! 非常感谢。
答案 0 :(得分:1)
您的第一个代码示例看起来像Windows.Forms应用程序,但Expression Blend会创建WPF应用程序。因此没有this.Controls
- 枚举。您应该将控件添加到Grid
(或您使用的任何其他容器),例如
Class1.xaml
<Window x:Class="Class1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="About" Height="300" Width="350" ResizeMode="NoResize">
<Grid x:Name="grid" />
</Window>
Class1.xaml.cs
...
public Class1()
{
InitializeComponent();
SriClocks.DigitalClockCtrl clk = new DigitalClockCtrl { Size = new Size(500,150) };
this.grid.Children.Add(clk);
}
...