2015-09-21 72 views
0

我有一個嵌套的gridview,奇妙地工作與一個看似簡單的問題。我不想在每個子網格視圖上重複標題。我希望子網格視圖的標題顯示在父網格視圖的TemplateField HeaderText區域中。我似乎無法找到一個好辦法做到這一點。兒童gridview單頭行

舉例來說,我現在有這個....

gv1Header 

      gv2Header gv2Header 

data   data  data 
       data  data 

      gv2Header gv2Header 
data   data  data  
       data  data 

但我想看到這...

gv1Header gv2Header gv2Header 
    data   data  data 
       data  data 
    data   data  data 
       data  data 

任何想法?非常感謝。

回答

0

實施GridView的事件RowDataBound並保留gv1Header列中每個單元格的值。如果單元格中的值與之前的值相同,則將單元格文本設置爲空字符串。

0

最簡單的方法是使用多個內部GridView的每個列,並設置

ShowHeader =「假」

例如,如果你的內心電網有3列,你應該在主加3模板列格。

<asp:GridView runat="server" ID="grd" AutoGenerateColumns="false"> 

     <Columns> 
      <asp:BoundField HeaderText="col1" DataField="name" /> 

      <asp:TemplateField HeaderText="Col2" > 
       <ItemTemplate> 

        <asp:GridView runat="server" ID="fdf" ShowHeader="false"> 
         <Columns> 
          <asp:BoundField DataField="InnerCol1" /> 
         </Columns> 
        </asp:GridView> 

       </ItemTemplate> 
      </asp:TemplateField> 


      <asp:TemplateField HeaderText="Col3" > 
       <ItemTemplate> 

        <asp:GridView runat="server" ID="fdf" ShowHeader="false"> 
         <Columns> 
          <asp:BoundField DataField="InnerCol2" /> 
         </Columns> 
        </asp:GridView> 

       </ItemTemplate> 
      </asp:TemplateField> 



     </Columns> 

    </asp:GridView>