如何在WPF中创建自定义标签,然后在WinForms中使用
问题描述:
我想在我的WinForms项目中使用自定义字体而不安装字体。我找到了this作为解决方案,但它不起作用,因为我想使用的FontStyle是Thin,它不包含在System.Drawing.FontStyle枚举器中。我认为在WPF中使用这种自定义字体应该很容易,我认为可能的解决方案是在WPF中创建一个自定义标签(ThinLabel)并将其托管在Winforms中。你能告诉我哪个是在WPF中为此目的创建自定义标签的正确方法吗?我读过WPF中的控件可以通过几种方式进行自定义(样式,数据模板,..),但我不知道应该为此目的采取哪种方式。请考虑我迄今为止从未使用过WPF。如何在WPF中创建自定义标签,然后在WinForms中使用
答
为了在Winforms中实现WPF用户控件,您需要使用和ElementHost 因此,如果您想创建一个WPF标签,就像您在WPF中所说的那样,您将创建一个带有标签的DLL项目,并在您的winforms项目中引用它,在建立之后,如果不在工具箱中使用ElementHost
,您应该可以看到带有工具箱中的标签的UserControl,您应该看到一个WPFElementHost。 – RadioSpace 2014-09-29 21:21:37
我知道,但问题是如何在WPF中为此目的创建自定义控件。我有创建一个自定义控件还是只使用样式?你能举个例子吗? – 2014-09-30 06:19:07