Можно ли определить одноразовый пользовательский элемент управления в коде ASPX позади? - PullRequest
0 голосов
/ 21 декабря 2010

Одна из моих больших претензий к ASP.NET состоит в том, что она затрудняет организацию элементов управления страницей, помимо чрезмерного количества идентификаторов префиксов. В прошлом я старался изо всех сил пытаться облегчить это, но я хотел бы найти решение, которое легче реализовать. Итак, мне интересно:

Можно ли определить пользовательский элемент управления в коде позади .aspx, а затем использовать его в .aspx? Я думаю, что, вероятно, нет ... Я не могу заставить его работать.

Ответы [ 2 ]

1 голос
/ 21 декабря 2010

Нет. Вы должны создать пользовательский элемент управления в своем собственном файле .ascx.

Хотя, если вы хотите создать веб-элемент управления, вы можете определить его в любом файле .cs / .vb, который вы хотите. Хотя ради того, чтобы ваши коллеги смогли найти ваш код, я мог бы предложить, чтобы он в любом случае находился в отдельном файле.

ПРИМЕЧАНИЕ. Я бы поставил под сомнение обоснованность «трудно организовать элементы управления страницей сверх чрезмерного количества идентификаторов префиксов». Это то, для чего предназначены шаблонные элементы управления (ретранслятор, список данных и т. Д.). Они будут реализовывать INamingContainer и, таким образом, позволят вам называть элементы управления с тем же именем, но с другой областью действия. Здесь есть хорошая информация ...

0 голосов
/ 21 декабря 2010

Должен быть определен существующий пользовательский элемент управления ASP.NET, и вы можете динамически загружать его. Это примерно столько же, сколько у вас есть динамические возможности с пользовательскими элементами управления. Вы также можете использовать пользовательские элементы управления, которые действительно дают вам полный контроль над визуализированным пользовательским интерфейсом. Однако отсутствие визуализации полных идентификаторов может привести к последующим проблемам с интеграцией клиент / сервер в зависимости от того, что вы пытаетесь сделать.

Кроме того, для настройки идентификатора вы можете использовать свойство ClientIDMode в ASP.NET 4.0: http://msdn.microsoft.com/en-us/library/system.web.ui.control.clientidmode.aspx

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