2012-01-25 112 views
0

我是新來拉德控制..獲取服務器端事件:radgrid控件控制

我有這個圖片被點擊RadGrid..when的列內的圖像,我想更新另一個AjaxPanel..but我無法找到的情況下,我可以做到這一點..

我想這樣的..

... 
    <telerik:GridTemplateColumn> 
     <ItemTemplate> 
      <asp:ImageButton ID="ImgEdit" runat="server" 
          ImageUrl="Images/edit.png" 
          OnClick="EditImage_Click" /> 
     </ItemTemplate> 
    </telerik:GridTemplateColumn> 
... 
.... 
    <AjaxSettings> 
     <telerik:AjaxSetting AjaxControlID="ImgEdit"> 
      <UpdatedControls> 
       <telerik:AjaxUpdatedControl ControlID="RadAjaxPanel1" /> 
      </UpdatedControls> 
     </telerik:AjaxSetting> 
.... 

protected void EditImage_Click(object sender, EventArgs e) 
    { 

    } 

我也試過下面在Page_Load中代碼..

((ImageButton)(RadGrid1.FindControl("ImgEdit"))).Click += 
           new ImageClickEventHandler(EditImage_Click); 

,但似乎沒有奏效..

請幫助...

回答

1

不叫的ImageButton的EditImage_Click事件時,可以給這個imagebuttom一個命令名並且調用grid row command event並且使用這個行命令事件而不是EditImage_Click事件

+0

'行命令event'在radgrid控件不可用的CommandName屬性是problem..don't知道什麼是替代事件 – dotNETbeginner

+0

請參閱此URL:http://www.telerik.com/help/aspnet/grid/grdcommanditemtemplate.html –

+0

「ItemCommand」事件沒有針對ImageButton發射:( – dotNETbeginner

1

你錯過了CommandName屬性,ItemCommand將會發生o如果「GridView控件中的按鈕也可以調用該控件的某些內置功能,那麼也是如此。要執行這些操作中的一個,設置一個按鈕」

<telerik:GridTemplateColumn UniqueName="TempCol" > 
         <ItemTemplate> 
          <asp:ImageButton ID="ImageButton1" runat="server" CommandName="DoEdit" /> 
         </ItemTemplate> 
         </telerik:GridTemplateColumn> 

事件處理

protected void RadGrid1_ItemCommand(object source, GridCommandEventArgs e) 
     { 
      if (e.CommandName == "DoEdit") 
      { 
       //dosomething 

      } 

     } 
+0

不工作.... – dotNETbeginner

+0

什麼不工作???什麼錯誤??你已經告訴代碼有什麼問題 –