从代码隐藏中添加WPF用户控件

时间:2009-09-11 10:59:18

标签: c# wpf user-controls

我有一个UserControl我想在运行时添加到我当前的WPF页面。这可能吗?

拥有Menu-bar并且在其下面我希望获得所有信息,即我选择Menu -> Show Orders然后我希望OrderList-UserControl添加到Menu下。

当然我可以使用订单WPF页面但是我必须在任何地方重新创建Menu吗?而且我不喜欢那里的冗余。

我尝试了类似这样的东西,它根本没有显示任何内容,它确实在UserControl内运行了代码,但我的窗口上没有显示任何内容:

wrapPanel1.Children.Add(new OrderControl(100));

建议?

1 个答案:

答案 0 :(得分:2)

如果您将ContentPresenter作为占位符,则可以将该控件的Content属性设置为在代码隐藏中生成的控件。


奇怪,看看this link中的代码你正在做什么应该正常工作 - 我给你的代码肯定在我的应用程序中工作 - 所以我猜你的自定义控件或屏幕有问题重绘。你可以直接在XMAL中添加控件并查看它吗?如果您通过代码添加控件然后强制屏幕重绘(用另一个覆盖窗口,然后揭开它)会发生什么。