我能否可靠地在Winform中使用WPF自定义控件?

3
我的要求是创建一个包含数据网格的winform,允许行展开并显示其他细节。我考虑使用WPF控件,并在其中加入WPF DataGrid来处理此问题,利用DataGrid的RowDetails属性处理行的展开。
我完全不了解WPF和Datagrid的RowDetails属性,现在才开始阅读相关内容。一旦开发出这个控件,我能否在我的winform中使用它呢?我在尝试集成WPF控件到我的winform时可能会遇到什么问题。
2个回答

0

我曾多次在WinForm中使用WPF控件。 但是,我所做的唯一方法是将其托管在ElementHost控件中。 一旦放置在其中,我没有注意到任何主要问题,尽管我听说性能可能会受到使用情况的影响。


0

正如前面两个答案所述,您必须使用ElementHost。 在这里有一个比较,介绍了如何在Winforms中托管WPF和在WPF中托管Winforms。当我开始使用它时,阅读这个比较对我很有帮助。 在这篇文章中,作者链接到与Windows Forms/WPF互操作相关的注意事项,其中列举了一些常见问题。

将您的WPF控件构建得像供应商控件一样,具有清晰的接口,然后使用ElementHost进行托管。我不得不双向使用它,但只用于旧版控件,如果您从其他平台引入的控件具有良好的接口,那么它真的会很有帮助;否则可能会有点混乱。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接