2011-07-12 7 views
0

私はASPグリッドビューを持っています。そのデータソースはエンティティのリストです。エンティティには11個のプロパティがありますが、グリッドビューにいくつかの列しか表示しません。 私のグリッドビューは、ページの背後にある私のコードで列がn個ある場合、グリッドビューにn列未満を表示するにはどうすればよいですか?

<asp:GridView runat="server" ID="GridForResult" 
       Caption="Update The Result for the Folloing Students" 
       Visible="true" ShowHeader="false"> 
    <Columns> 
    <asp:TemplateField ItemStyle-Width="100px"> 
     <ItemTemplate> 
     <%#Eval("TestRoll")%> 
     </ItemTemplate> 
    </asp:TemplateField> 
    <asp:TemplateField ItemStyle-Width="120px"> 
     <ItemTemplate> 
     <%#Eval("Name")%> 
     </ItemTemplate> 
    </asp:TemplateField> 
    <asp:TemplateField ItemStyle-Width="80px"> 
     <ItemTemplate> 
     <%#Eval("Program")%> 
     </ItemTemplate> 
    </asp:TemplateField> 
    </Columns> 
</asp:GridView> 

で、私はこのようなグリッドをバインドしている:私は今

List<FormGridEntity> gridEntities = new List<FormGridEntity>(); 
gridEntities = AdmissionResult_BAO.GetAllCandidateAdmissionInfo(); 
GridForResult.DataSource = gridEntities; 
GridForResult.DataBind(); 
//What Will I need to do here or somewhere else 

何をすべきでしょうか? V4Vendetta @

+4

'AutoGenerateColumns = false' – V4Vendetta

+0

@Geoff Appleford:THnxは大好き! – Pankouri

+0

@Pankouri - 問題ありません。もしあなたがわからないなら、 '{}'ボタンを使ってコードブロックをフォーマットすることができます。インラインコードセグメントの場合は、コードをバックティックで囲みます。例えば、 ' –

答えて

1

は、右のそれを持っている - あなたのGridViewのマークアップでは、AutoGenerateColumns =「false」に設定します。

<asp:GridView runat="server" ID="GridForResult" AutoGenerateColumns="false" Caption="Update The Result for the Folloing Students" Visible="true" ShowHeader="false"> 

あなたがマークアップで列を定義し、それらを個別にオフにしたい場合はまた、あなたが設定することができます可視=「false」のプロパティ:

<asp:TemplateField ItemStyle-Width="100px" Visible="false"> 

あなたがプログラム的にオン/オフ列を有効にする場合を除き、あなたのコードビハインドで何もする必要はありません。

GridForResult.Columns[0].Visible = false; // Turns off the first column 
関連する問題