在gridview上将列显示为行的最佳方法

问题描述

| 我从以下位置更改了GridView显示
Column A   Column B   Column C   Graph
Value A    1          9          Chart A
Value B    3          7          Chart B
...对此:
Column A   Column B   Column C
Value A    1          9
        Chart A (colspan = 3)
Value B    3          7
        Chart B (colspan = 3)
图形A和B的显示通过以下代码完成:
<asp:TemplateField>
    <ItemTemplate>
        <tr><td colspan=3>
           <asp:Chart ID=\"ImgChart\" runat=\"server\"... />   
        </td></tr>
    </ItemTemplate>
</asp:TemplateField>
它可以正常工作,并且可以执行我想要的操作,但是结果是:
<table>
   <tr>
      <td>Column A</td>
      <td>Column B</td>
      <td>Column C</td>
      <td></td>
   </tr>
   <tr>
      <td>Value A</td>
      <td>1</td>
      <td>9</td>
      <td></td>
   </tr>
   <tr>
      <td colspan=\"3\">
         <image...>
      </td>
   </tr>
   <tr>
      <td>Value B</td>
      <td>3</td>
      <td>7</td>
      <td></td>
   </tr>
   <tr>
      <td colspan=\"3\">
         <image...>
      </td>
   </tr>
</table>
这导致空td的宽度令人讨厌,我无法控制,如果不存在则很好。 您有什么建议?     

解决方法

        在存储过程中使用PIVOT并将数据表与GridView绑定。