Как (если вообще) вы можете сделать наследование ASP.NET UserControl из другого UserControl?

В Windows Forms легко наследовать один пользовательский элемент управления от другого. Унаследованный элемент управления содержит все элементы управления родительской формы, и вы можете добавить еще несколько. Можно ли это сделать с ASP.NET? Я говорю о пользовательских элементах типа .ASCX.

Ответ 1

Короткий ответ: нет, это нелегко сделать. Там нет наследования между пользовательскими элементами управления или веб-формами. Вы можете создать иерархию наследования между классами позади классов, но компоненты gui не наследуются.

Ответ 2

Различие между примером форм Windows и примером веб-форм состоит в том, что элемент управления имеет помеченную часть. Я полагаю, что однажды это может быть преодолено, поскольку веб-приложения собирают все (по крайней мере, в некоторых случаях), но сегодня это не так.

Вы можете, однако, ударить пользовательский элемент управления с другого пользовательского элемента управления, объявить паузу. Это не даст вам наследства, но это позволит вам украсить определенный элемент управления дополнительными элементами управления, создав композицию из исходного элемента управления и материал, который вам нужно добавить. Это может решить вашу проблему?

Ответ 3

Вы могли бы наследовать базовый пользовательский элемент управления в коде и вставлять свои дополнительные элементы управления в код, если вы говорите о создании в визуальном дизайнере, тогда я не уверен. Я знаю о создании составных элементов управления как из элементов управления system.web, так и для элементов управления пользователя, поэтому нет причин, по которым ваш новый элемент управления не может содержать другой пользовательский элемент управления с добавленными дополнительными элементами управления.