为什么我在一个asp.net页面的一个datagrid控件增加了某个事件,如SelectedIndexChanged事件,在加载页面时就会出现“外部组件异常”的错误,有的页面就不会出错,有谁知道原因吗?怎么解决?谢谢!

解决方案 »

  1.   

    有可能是datagrid移动了,比如说SelectedIndexChanged事件,虽然SelectedIndexChanged事件已经注册了,但是datagrid移动了,你的SelectedIndexChanged事件也会变成SelectedIndexChanged1了,所以你要重新注册一下了.
    你试一下看是不是了
      

  2.   

    可是什么叫datagrid移动了呢?我试过在那个页面上重新创建一个新的datagrid,添加事件后还是同样出错?
      

  3.   

    删除该datagrid重新加个试验下
    如果还不行然后对比正常的和非正常的看有虾米区别
      

  4.   

    我又重新建了两个页面试了一下,这种情况不稳定,第一个页面新建了一个datagrid,加入事件没有出错,我又把原来出错页面的所有aspx页面html全部拷到这个页面上,第一次也没出错,很奇怪,又把原出错页面对应的c#后台编码全部拷到新页面上后出错了,以为是后台编码问题
    然后又重新建立第二个页面,这时即使只是新建一个datagrid,加入事件也报错了(这个页面按说就完全是一个新建的页面,没有拷贝任何代码),实在百思不得其解,没有人遇到这种情况吗?
      

  5.   

    怎么重新注册呢?
    我在page_load里面,用以下语句
    datagrid.attributes.add("OnSelectedIndexChanged","mytest");
    没有作用,并不触发这个事件
      

  6.   

    现在又发现加入某些事件没问题,有些就不行
    加入:
    OnEditCommand="Grid_Edit" OnCancelCommand="Grid_CancelEdit" OnUpdateCommand="Grid_Update"
    没有出错
    再加入
    OnDeleteCommand="Grid_Delete"
     OnItemCommand="Grid_Item"
    任何一个后就会出现“外部组件异常”错误!哪个高手能帮忙解决啊,急啊?多谢了,我会再加给分的