Я считаю, что последнее утверждение неверно, на мой взгляд. Я создаю пользовательские элементы управления по разным причинам.
Основная причина в том, что если я, скажем, разрабатываю интерфейс из нескольких элементов управления, сгруппированных вместе.
Сначала я создаю библиотеку классов, а затем добавляю в нее пользовательские элементы управления. Теперь, если мне нужно изменить какую-либо часть логики работы пользовательского элемента управления, я могу очень легко. Также эту библиотеку классов можно использовать несколько раз.
Также в одной и той же классной библиотеке у меня может быть несколько классов, которые можно использовать совместно с любым из моих пользовательских элементов управления.
Это основная причина, по которой я использую пользовательские элементы управления. И если вы внесете изменения в свой пользовательский элемент управления или библиотеку классов. как только вы построите работу. dll будет динамически обновляться в папке bin.
Поэтому, если я ссылаюсь на это в другом проекте, эти изменения также появятся в новом проекте.
Кроме того, он не использует те же процедуры рисования, что и форма, и все, что вы загрузили в форму.
Таким образом, пользовательские элементы управления дают нам возможность быть очень модульными. И я могу иметь несколько пользовательских элементов управления, которые совместно используют базовые классы библиотеки классов ... Таким образом, цель пользовательского элемента управления - это просто не для одного проекта. В этом отношении ограничений нет. Джефф
UserControlэто действительно «составной» элемент управления (элемент управления, созданный из других элементов управления), тогда как пользовательский элемент управления на самом деле является элементом управления, разработанным пользователем.