2010-09-22 6 views
15

Я создал собственный элемент управления в C# (переопределенные методы в Button control и добавленные новые события). Мне нужно использовать этот элемент управления в моем приложении wpf. В WinForms я могу использовать это ToolBox(right click) --> Choose Items -->Browse. где, как и в WPF, я не могу импортировать пользовательские элементы управления. Есть ли способ сделать этоКак использовать пользовательские элементы управления в WPF

+0

Вы должны уточнить, является ли ваш элемент управления тем, который вы создали для WinForms, или новый, созданный специально в WPF. –

+0

Элемент управления создается в 'WindowsFormsControlLibrary' –

ответ

12

может потребоваться перестройка для определенного проекта, тогда файл xaml должен быть активным. Пользовательский элемент управления должен появиться в панели инструментов. если он не отображается. Вы можете сделать следующее:

в файле XAML, где-то в теге заголовка, где вы видите многие Xmlns: ууу, добавить новый 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"> 

где обычай любой идентификатор пространства имен и MyProject - это пространство имен. Не беспокойтесь об этом, потому что, когда вы вводите «xmlns: custom =» (без кавычек), intellisense предоставит вам выбор существующих пространств имен, на которые в настоящее время ссылаются. поэтому просто выберите подходящее пространство имен из раскрывающегося списка и нажмите клавишу ввода.

Теперь прокрутите вниз, туда, где вы хотите поставить свой собственный контроль и:

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

обычай: MyControl это от Xmlns: пользовательских (выше) и имя управления, MyControl Содержание - это свойство Content, присвоенное «Click Me!». и Нажмите - событие Click с обработчиком «Button_Click».

Надеюсь, это поможет!

1

Я так понимаю, вы говорите об управлении пользователем WinForms здесь, а не о WPF? Если да, то я предлагаю вам прочитать следующую статью: http://msdn.microsoft.com/en-us/library/ms742875.aspx

Я мог бы добавить, что это может быть хорошей идеей, чтобы просто создать пользовательский элемент управления WPF - процесс улучшился много по сравнению с WinForms, также модели содержимого должно сделать вещи немного легче.

Смежные вопросы