элемент управления внутри мастера <StepNavigationTemplate>тег не доступен в коде позади? - PullRequest
0 голосов
/ 27 июня 2010

Я поместил элемент управления Literal в тег элемента управления Wizard.

В коде ниже я не могу получить доступ к этому элементу управления.

Почему это так?

Ответы [ 2 ]

3 голосов
/ 27 июня 2010

Любой вид шаблонного элемента управления (Wizard, Repeater и т. Д.) Не предоставляет элементы управления внутри шаблона в качестве переменных-членов. Вам нужно будет использовать FindControl на правильном шаге.

т.е.,

var myStep = wizard.Steps[1]; // or however you want to find it
var myLiteral = myStep.FindControl("MyLiteral") as Literal;

если у вас есть другие шаблонные элементы управления в вашем шаге мастера, вам нужно будет также выполнить «FindControl» для них, чтобы продолжить детализацию до литерала. Я создал метод расширения «FindControlRecursive», чтобы сделать это проще.

0 голосов
/ 27 июня 2010

Вы пробовали это:

Literal literal = MyWizard.FindControl("MyLiteral") as Literal;
if (literal != null)
    // do something with literal

(Может быть, вы пытались, но как я могу узнать это по вашему вопросу?)

...