C# 如何在WPF中使用自定义控件

C# 如何在WPF中使用自定义控件,c#,wpf,C#,Wpf,我在C#中创建了一个自定义控件(重写了Button控件中的方法并添加了新事件)。我需要在我的wpf应用程序中使用此控件。在WinForms中,我可以通过ToolBox(右键单击)-->选择项-->浏览来使用它。在WPF中,我无法导入自定义控件。有什么方法可以做到这一点吗我想你这里说的是WinForms用户控件,而不是WPF控件?如果是这样,我建议您阅读以下文章: 我想补充一点,简单地创建一个WPF用户控件可能是一个好主意-与WinForms相比,该过程有了很大的改进,而且内容模型应该使事情变得

我在C#中创建了一个自定义控件(重写了Button控件中的方法并添加了新事件)。我需要在我的
wpf
应用程序中使用此控件。在
WinForms
中,我可以通过
ToolBox(右键单击)-->选择项-->浏览
来使用它。在WPF中,我无法导入自定义控件。有什么方法可以做到这一点吗

我想你这里说的是WinForms用户控件,而不是WPF控件?如果是这样,我建议您阅读以下文章:


我想补充一点,简单地创建一个WPF用户控件可能是一个好主意-与WinForms相比,该过程有了很大的改进,而且内容模型应该使事情变得更加简单。

可能需要为特定项目重建,然后xaml文件应该处于活动状态。自定义控件应显示在工具箱中。如果它不显示。您可以执行以下操作:

在xaml文件中,在头标记的某个地方,您可以看到许多xmlns:yyy,添加一个新的xmlns:example:

<Window
    x:Class="MyProject.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:custom="clr-namespace:MyProject">

其中custom是名称空间的任何标识符,MyProject是名称空间。不要担心这一点,因为当您键入“xmlns:custom=(不带引号)时,intellisense将为您提供当前引用的现有名称空间的选择。因此,只需从下拉列表中选择适当的名称空间,然后按enter键

现在向下滚动到要放置自定义控件的位置,然后:

<custom:MyControl Content="Click Me!" Click="Button_Click" />

自定义:MyControl来自xmlns:自定义(如上)和控件名MyControl Content是分配给“单击我!”的内容属性,Click是带有“按钮单击”处理程序的单击事件


希望这有帮助

您应该澄清您的控件是为WinForms创建的还是专门在WPF中创建的新控件。该控件是在
WindowsFormsControlLibrary