2012-08-01 68 views
0

我有一個通過代碼生成列的網格視圖,以及aspx中的ItemTemplate字段,如何清除代碼生成的列而不清除模板字段?從我以前的帖子如何清除生成的列而不清除ItemTemplate字段

代碼

TemplateField templateField = new TemplateField(); 
TemplateField uid = new TemplateField(); 
uid.HeaderText = "userid"; 
uid.ItemTemplate = new AddItemTemplate(ListItemType.Item, "userid"); 
GridView1.Columns.Add(uid); 
for (int i = 0; i < dt.Columns.Count; i++) 
{ 
    BoundField boundField = new BoundField(); 
    if (dt.Columns[i].ColumnName.ToString() != "userid") 
{ 
    boundField.DataField = dt.Columns[i].ColumnName.ToString(); 
    boundField.HeaderText = dt.Columns[i].ColumnName.ToString(); 
    GridView1.Columns.Add(boundField); 
} 
} 

ASPX

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false"> 
    <Columns> 
     <asp:TemplateField> 
      <ItemTemplate> 
       <tr> 
        <td> 
         <div id="div<%# Eval("userid") %>" > 
          <asp:GridView ID="GridView2" AllowSorting="true" > 
           <Columns> 
            --code-- 
           </Columns> 
          </asp:GridView> 
         </div> 
        </td> 
       </tr> 
      </ItemTemplate> 
     </asp:TemplateField> 
    </Columns> 
</asp:GridView> 
+0

列是否要刪除/清除列或數據? – adatapost 2012-08-01 07:24:11

+0

實際上,我需要清除生成的列中的數據,但如果不可行,那麼我需要將它們刪除 – Noora 2012-08-01 07:35:07

+0

請向我們顯示您的代碼。 – adatapost 2012-08-01 07:40:12

回答

0

1)你可以嘗試完全重新綁定到不同的數據源。它返回所有自定義字段&其他僅返回的Id

2)更簡單的方法是隻隱藏像YourGridView.Columns[0].Visible = false;