我需要在页面上以编程方式在文本框上添加 requiredvalidator,我是在 page_load 还是在此之前的某个事件中执行此操作?
问问题
435 次
2 回答
1
Page_Load 适用于更改控件的设置。
编辑: 此代码经过测试并且有效:
// in page_load event :
validator.ControlToValidate = textboxToValidate.ID;
但是,如果您在事件之后动态生成验证器,问题可能会有所不同。
于 2009-04-08T13:59:32.357 回答
1
这取决于您为什么需要添加它。如果它总是在那里,那么 OnInit 是一个好地方。
如果您只需要在操作发生后添加它,那么您希望在调用 LoadViewState 之后执行它,这样您可以在第一次添加它后继续添加它。第一次添加,很可能你会因为一些回发事件而想要这样做,所以你可以将它添加到你的事件处理程序中。
我建议在您想要此控件的位置向控件添加一个占位符。然后在需要时添加控件。然后,您应该在 ViewState 中存储一些信息,以了解您添加了控件。然后,您可以覆盖 LoadViewState,并在需要时添加控件。
如果只有在控件加载了一些数据时才需要验证器,那么在加载数据后立即添加它,无论是 OnLoad 还是某些属性访问器。
于 2009-04-08T14:13:19.373 回答