Вы должны выставить элементы управления, которые могут быть изменены и доступны извне, как свойства.
MSDN
Но подумайте не о том, чтобы выставить весь контроль целиком, а только о. Text-свойство Textbox, потому что это предотвращает непреднамеренное и непредсказуемое поведение.
Пользовательский контроль должен инкапсулировать сложность и должен (в основном) использоваться повторно. Чем больше элементов управления вы предлагаете элементам управления (например, странице), которые используют пользовательский элемент управления, тем меньше их можно использовать повторно и тем больше у них ошибок.
Если, например, вы создали элемент управления Login с текстовым полем для имени пользователя и текстовым полем для пароля, имеет смысл предлагать свойства с именами имя пользователя и пароль вместо возврата самих текстовых полей. Каждое свойство возвращает соответствующее значение Textbox-Text.
В вашем примере с TableRow, какова его цель? Вы должны предоставить свойство со значимым именем для управления его видимостью (например, ShowTitle
, если строка содержит заголовок, получатель / установщик вернет / установит фактическое видимое состояние табличной строки).
Конечно, вам нужна ссылка на ваш UserControl, если вы хотите получить доступ к его свойствам. Вы должны предоставить исходный код, если у вас есть проблемы с его поиском на странице. Это зависит от того, где вы создали и добавили его. Обычно вы найдете элементы управления с FindControl в NamingContainer (например, NamingContainer элемента управления, определенного в TemplateColumn GridView, является самим GridViewRow).