0

我在 Wizard 控件的标签中放置了一个 Literal 控件。

在代码隐藏中,我无法访问该控件。

这是为什么?

4

2 回答 2

3

任何类型的模板控件(Wizard、Repeater 等)都不会将模板内的控件公开为成员变量。您将需要在正确的步骤上使用 FindControl。

IE,

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

如果您的向导步骤中有其他模板化控件,您还需要对这些控件执行“FindControl”以继续深入了解您的文字。我创建了一个“FindControlRecursive”扩展方法来简化它。

于 2010-06-27T00:04:28.033 回答
0

你试过这个:

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

(也许你试过,但我怎么能从你的问题中知道呢?)

于 2010-06-26T23:14:17.657 回答