2012-03-14 141 views
0

我有兩個主/明細配置的asp.net devexpress gridviews。我展開主行以顯示子行,並對子行執行操作,例如編輯,添加新行和刪除行。之後,我希望父Gridview崩潰,並使用新數據刷新GridView。請讓我知道我該怎麼做。在devexpress網站上,我看到提到了CollapseRow和ExpandRow javascript clientside方法。但找不到任何示例代碼來描述如何調用這些代碼。如何摺疊和展開devexpress主/細節asp.net gridview

感謝

回答

2

先分配clientInstanceName電網爲:

<dx:ASPxGridView ID="ASPxGridView1" runat="server" KeyFieldName="ID" 
      ClientInstanceName="grid"> 

當你完成更新或刪除您撥打grid.CollapseAllDetailRows();你已經完成了手術後說。或在ASPxClientGridView.DetailRowExpanding Event上設置擴展詳細信息行visibleindex。根據您的要求檢查以下代碼段和代碼。

<html> 
    <head runat="server"> 
    <title></title> 
    <script language ="javascript" type ="text/javascript"> 
     var focusedIndex; 
    </script> 
</head> 
<body> 
    <form id="form1" runat="server"> 
    <div> 
     <dx:ASPxGridView ID="ASPxGridView1" runat="server" KeyFieldName="ID" ClientInstanceName="grid"> 
      <ClientSideEvents DetailRowExpanding="function(s, e) { 
    focusedIndex = e.visibleIndex; 
}" /> 
      <SettingsBehavior AllowFocusedRow="True" AllowSelectByRowClick = "true" /> 
      <SettingsDetail ShowDetailRow="True" /> 
     </dx:ASPxGridView> 
     <dx:ASPxButton ID="ASPxButton1" runat="server" AutoPostBack="False" Text="ASPxButton"> 
      <ClientSideEvents Click="function(s, e) { 
      //var visibleindex = grid.GetFocusedRowIndex(); 
      //grid.CollapseAllDetailRows(); 
      if(focusedIndex != 'undefined') 
      { 
      grid.CollapseDetailRow(focusedIndex); 
      } 
      }"/> 
     </dx:ASPxButton> 
    </div> 
    </form> 
</body> 
</html>