Literal l = (Literal)sender;
DataListItem container = (DataListItem)l.NamingContainer;
我写了以上代码,但是在调用的时候总是提示转换出错!

解决方案 »

  1.   

    l.NamingContainer 是不是DataListItem类型的?或者是从DataListItem继承的?
      

  2.   

    如果sender是一个DataListItem
    可以直接
    DataListItem container = (DataListItem)sender;
      

  3.   

    Control  c= (Control)sender;
    DataListItem container = (DataListItem)c.NamingContainer;
      

  4.   

    本来是个Literal,用Object对象传过来
    public void BindData( object sender,EventArgs e )
    {
    Literal l = (Literal)sender;
    DataListItem container = (DataListItem)l.NamingContainer;
    ......
    能行吗
      

  5.   

    如果Literal的命名容器控件是DataListItem,就可以,否则不可以