Нестандартные элементы управления имеют максимальную способность к расширению, поскольку они создаются с нуля. В результате их относительно сложно разрабатывать — так как вам приходится заботиться не только о функциональности, но и обо всех аспектах внешнего вида элемента управления.
Поскольку физический пользовательский интерфейс нестандартного элемента управления на 100% должен рисоваться кодом, то процесс создания нестандартного элемента управления связан с большим объемом самостоятельной работы.
Поскольку ббльшая часть работы по созданию нестандартного элемента управления выполняется на уровне кода, то мы не станем подробно заниматься данной темой в этой книге. Однако необходимо заметить, что процесс начинается точно так же, как и для других элементов управления: Visual Studio имеет шаблон проекта нестандартного элемента управления; добавление его в проект даст вам основу для начала разработки. Дальше все зависит от вас.
Примечание
Событие OnPaint — это то место, где вы размещаете код прорисовки пользовательского интерфейса вашего элемента управления. Несмотря на то, что так называемые "рисуемые владельцем" элементы управления могут иметь сложный код прорисовки, хорошая новость состоит в том, что визуальный конструктор Windows Forms Designer будет использовать любой размещенный в событие OnPaint код для визуализации элемента управления на стадии конструирования. Это означает, что вы по-прежнему можете положиться на конструктор Windows Forms Designer в том плане, что он будет обеспечивать вам работу в режиме WISYWIG даже с нестандартными элементами управления.