2016-11-19 4 views
1

ラベル(lbltest)をRadGrid ItemCommandfrmRptControlledUsers)イベントで更新したいとします。ラベルはRapControlledUsersの外側ですが、RadGridはその内側にあります。RadAjaxPanel外のラベルを更新する

HTMLマークアップ

<telerik:RadAjaxLoadingPanel ID="RALPPermissions" runat="server" EnableSkinTransparency="true" BackgroundTransparency="30"> 
</telerik:RadAjaxLoadingPanel> 
<telerik:RadAjaxPanel ID="RapControlledUsers" runat="server" LoadingPanelID="RALPPermissions"> 
    <telerik:RadGrid ID="frmRptControlledUsers" RenderMode="Lightweight" runat="server"> 
     <mastertableview> 
      <columns> 
       <telerik:gridtemplatecolumn> 
        <itemtemplate> 
         <asp:LinkButton ID="LnkDelete" runat="server" CommandName="Delete" CommandArgument='<%# Eval("ID") %>'> 
          Delete 
         </asp:LinkButton> 
        </itemtemplate> 
       </telerik:gridtemplatecolumn> 
      </columns> 
     </mastertableview> 
    </telerik:RadGrid> 
</telerik:RadAjaxPanel> 
<asp:Label ID="lbltest" runat="server"></asp:Label> 

コード

private void RptControlledUsers_ItemCommand(object sender, GridCommandEventArgs e) 
{ 
    string Command = e.CommandName.ToString(); 
    switch (Command.ToLower()) 
    { 
     case "delete": 
      { 
       this.lbltest.Text="this is updated"; 
       break; 
      } 
    } 
} 

背後に誰かがこの問題の解決策を説明することができればそれは非常に参考になります。

答えて

0

ここでいくつかのオプションを検討できます。

  1. 使用RadAjaxManager手動制御を登録する制御の代わりRadAjaxPanel

    <telerik:RadAjaxManagerProxy ID="AjaxManagerProxy1" runat="server"> 
    <AjaxSettings> 
        <telerik:AjaxSetting AjaxControlID="frmRptControlledUsers"> 
         <UpdatedControls> 
          <telerik:AjaxUpdatedControl ControlID="lbltest" /> 
         </UpdatedControls> 
        </telerik:AjaxSetting> 
    </AjaxSettings> 
    

  2. 使用ScriptManagerScriptManager.RegisterDataItem()。詳細

https://msdn.microsoft.com/en-us/library/bb301423(v=vs.110).aspx#Examples

https://abhijitjana.net/2010/06/14/how-to-update-controls-which-are-outside-of-updatepanel-during-partial-page-rendering/

のためにこれらのリンクをチェックしてください
関連する問題