首页 文章

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

提问于
浏览
16

我在C#中创建了一个自定义控件(在Button控件中重写了方法并添加了新事件) . 我需要在我的 wpf 应用程序中使用此控件 . 在 WinForms 我可以通过 ToolBox(right click) --> Choose Items -->Browse 使用它 . 在WPF中我无法导入自定义控件 . 有没有办法做到这一点

2 回答

  • 1

    可能需要为某个项目重建,然后xaml文件应该是活动的 . 您的自定义控件应显示在工具箱中 . 如果它没有显示 . 你可以做到以下几点:

    在你的xaml文件中,在header标签的某个地方,你可以看到许多xmlns:yyy,添加一个新的xmlns:例如:

    <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: custom (上面),控件名称 MyControl Content 是分配了"Click Me!"的Content属性, Click 是带有处理程序"Button_Click"的Click事件 .

    希望这可以帮助!

  • 14

    我认为你在这里谈论WinForms用户控件,而不是WPF用户控件?如果是这样,我建议你阅读以下文章:http://msdn.microsoft.com/en-us/library/ms742875.aspx

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

相关问题