2016-10-26 4 views
0

여러 개의 상위 - 하위 Gridview 있습니다. 문제는 부모 gridview입니다. 열 이름은 비용 ($)이고 자식 gridview를 확장하면 자식 $ gridview (Devexpress)를 최소화 할 때 ($) 기호가 숨어 있습니다. Parent-Child gridview는 AspxCallbackPanel 및 PopupControl에 있습니다.Master - Detail Gridview 열 숨기기 Devexpress

<dx:ASPxCallbackPanel ID="cbpCartDetails" runat="server" 
     OnCallback="cbpCartDetails_Callback" ClientInstanceName="cbpCartDetails"> 
    <ClientSideEvents EndCallback="cbpCartDetails_EndCallBack" /> 
    <PanelCollection> 
    <dx:PanelContent ID="pnlCartDetails"> 
     <dx:ASPxPopupControl ClientInstanceName="popCartDetails" Width="600px" 
      Height="250px" CloseAction="CloseButton" MaxWidth="800px" MaxHeight="800px" 
      MinHeight="150px" MinWidth="150px" ID="popCartDetails" 
      HeaderStyle-ForeColor="White" HeaderStyle-Font-Bold="true" 
      runat="server" EnableViewState="false" PopupHorizontalAlign="WindowCenter" 
      PopupVerticalAlign="WindowCenter" EnableHierarchyRecreation="false" 
      Modal="true"> 
      <ContentCollection> 
       <dx:PopupControlContentControl ID="PopupControlContentControl2" 
               runat="server"> 

        <dx:ASPxGridView ID="grdBuildingCartEst" Width="100%" 
            Theme="SoftOrange" KeyFieldName="CarttypeId" 
            ClientInstanceName="grdBuildingCartEst"> 
         <Columns> 
          <dx:GridViewDataTextColumn FieldName="CartType" /> 
          <dx:GridViewDataTextColumn FieldName="NumberOfCart" /> 
          <dx:GridViewDataTextColumn FieldName="Cost" /> 
         </Columns> 

         <Templates> 
          <DetailRow> 
           <dx:ASPxGridView ID="grdFloorsCartEst" 
             Width="100%" 
             Theme="SoftOrange" 
             KeyFieldName="CarttypeId" 
             OnInit="grdFloorsCartEst_Init" 
             OnBeforePerformDataSelect= 
              "grdFloorsCartEst_BeforePerformDataSelect" 
             ClientInstanceName="grdFloorsCartEst"> 
            <Columns> 
             <dx:GridViewDataTextColumn 
              FieldName="CartSize" /> 
             <dx:GridViewDataTextColumn 
              FieldName="NumberOfCart" /> 
             <dx:GridViewDataTextColumn 
              FieldName="Cost" /> 
            </Columns>  
           </dx:ASPxGridView> 
          </DetailRow> 
         </Templates> 

         <SettingsDetail ShowDetailRow="true" /> 

        </dx:ASPxGridView>     
       </dx:PopupControlContentControl> 
      </ContentCollection> 
     </dx:ASPxPopupControl> 
    </dx:PanelContent> 
</PanelCollection> 

이 화면이 화면은 당신이 게시 한 코드에서, 2 (오류) https://i.stack.imgur.com/AghdG.png

답변

0

통지를 촬영 한 https://i.stack.imgur.com/Fb1QX.png

촬영에는 "비용이없는 ($) "마스터 모눈 열의 문자열, FieldName ="Cost "만. 아마도 "Cost ($)"는 Page_Load 또는 다른 이벤트 중에 codebehind에서 열 머리글로 설정됩니다.

자식 격자를 확장하면 콜백이 발생하고 비용 ($)을 설정 한 코드 숨김의 이벤트 코드가 실행되지 않습니다. 따라서 자식 그리드 확장 콜백 중에 마스터 그리드의 열 머리글이 "Cost ($)"로 설정되어 있는지 확인해야합니다. 100 % 확실하려면 페이지/컨트롤의 코드 숨김 부분을 질문 텍스트에 게시/첨부하십시오.

+0

실제로 기호 ($)는 XML 파일에서 가져옵니다. –

+0

@mohamedsami 그래서 자식 그리드 확장 콜백시 마스터 그리드 열 머리글을 업데이트해야합니다. 초기 xml 파일이 필요할 수도 있고 없을 수도 있습니다. grdBuildingCartEst.Columns ("Cost")와 같은 콜백 이벤트 핸들러에서 수행 할 수 있습니다. Caption = "Cost ($)"; – andrews

관련 문제