日期:2014-05-18  浏览次数:20411 次

datalist使用中的奇怪问题
程序中使用datalist绑定了数据,并在每行数据后有一个button按钮,在数据绑定过程中根据前面绑定的某个字段的值决定按钮的显示或隐藏,datalist的 <HeaderTemplate> 和 <FooterTemplate> 中有列表头,奇怪的是我在DataList的ItemDataBound事件中写上这样的语句却会报错:   ((Button)e.Item.FindControl( "Button1 ")).Visible   =   false
提示:未将对象引用设置到对象的实例。可是只要将 <HeaderTemplate> 和 <FooterTemplate> 这两段整个删除,程序就可以正常运行了。但是 <HeaderTemplate> 和 <FooterTemplate> 却又是必须要的,请问这是怎么回事?

------解决方案--------------------
因为你的HeaderTemplate和FooterTemplate都会引发ItemDataBound事件,但在HeaderTemplate和FooterTemplate中并没有Button1