Расширение класса компонентов пользовательского интерфейса в C # / VS2010 - PullRequest
0 голосов
/ 16 сентября 2010

Я только начал использовать C # / VS на прошлой неделе и задавался вопросом, как сделать что-то, что, я думаю, должно быть довольно простым:

Что я хочу сделать, это расширить класс, используемыйКомпонент пользовательского интерфейса и, следовательно, реализовать свои собственные методы в нем - только для одного экземпляра компонента пользовательского интерфейса.Если бы я использовал xcode / target c, я бы просто изменил имя класса компонента в построителе интерфейса, и он стал бы экземпляром этого класса, который, в свою очередь, расширил бы исходный класс пользовательского интерфейса.

Как мне сделать что-то сопоставимое с использованием C # / Visual Studio?

Ответы [ 2 ]

1 голос
/ 16 сентября 2010

Вы можете взять любой класс компонента в Windows Forms и создать его подкласс. Все визуальные элементы управления происходят от класса Control, и вы можете сделать это также.

Если ваш компонент является пользовательским элементом управления (т. Е. Он получен из System.Windows.Forms.UserControl), он должен автоматически появиться на панели инструментов после создания проекта. Для других компонентов вы можете добавить их на панель инструментов, щелкнув правой кнопкой мыши на панели инструментов и выбрав Настроить панель инструментов, выбрав вкладку .NET Framework , нажав кнопку Обзор и выбрав DLL с контролем.

0 голосов
/ 16 сентября 2010

Помните, что все (или большинство) компонентов пользовательского интерфейса являются классами, поэтому их можно «расширять», как и любой другой класс.

Некоторые из них будут иметь виртуальных членов, которые можно переопределить для выполнения специальных действий.Во всех случаях вы можете добавлять свойства, методы и события к компонентам.

После того, как вы создали и создали их, вы можете использовать их из панели инструментов, как если бы они были «встроенными»."Компоненты .NET.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...