2011-08-08 22 views
0

現在、グリッドビューが設定され、正しく動作していますが、少し問題がありました。グリッドのデータソースはDBテーブルから設定されており、テーブルの列の1つは別のテーブルの数値IDです。この数値IDをグリッドに表示するのではなく、別の表の説明列を表示する必要があります。表示目的のために現在のグリッドビューに追加の列を追加できますか?グリッドビューに列を追加する

+0

はい、できます。 – Icarus

+0

できますか?はい。あなたはすべきですか?いいえ。データソースにどのようにデータを入力していますか? – Nikki9696

答えて

1

はい、あなたのIDフィールドにテンプレートを使用してではなく、新しいフィールドを作成することによって、これを達成することができます。 This link has some examples.この方法で、既存の列をカスタム書式設定できます。

0

データセットを使用して、このデータセットをgridviewにバインドすることができます。 データセットを使用して、行や列を追加できます。以下の例は、グリッドビューに行/列を追加するのに適した例です。あなたはまた、少しの調整をして同じ例に従うことができます。 http://www.codeproject.com/KB/aspnet/dynamic_Columns_in_Grid.aspx

0

falseに設定しAutoGenerateColumns、と表示したい列を定義:

   <asp:GridView ID="GridView1" runat="server" CellPadding="4" CellSpacing="0" AutoGenerateColumns="false" Width="100%"> 
        <RowStyle BackColor="#ffffff" />        
        <AlternatingRowStyle BackColor="#f5f5dc" /> 
        <HeaderStyle BackColor="Beige" ForeColor="#333333" Font-Bold="true" Height="25px" />       
        <Columns> 
         </asp:TemplateField>                
         <asp:TemplateField HeaderText="Address"> 
          <ItemTemplate> 
           <%# Eval("Address") %> 
          </ItemTemplate> 
         </asp:TemplateField> 
        </Columns> 
      </asp:GridView> 
+1

データソースには、新しい列を引き出すための説明やコード内のロジックの束が、何人の数字を知っているかの説明を見つけようとする必要があります。可能であれば、データソースに追加する方がよいでしょう。 – Nikki9696

0

変更は3箇所で行われるべきである。

  1. datasourceはそれを持ち帰っdesc列を持つ必要があります。フロントエンドが非常に多くの呼び出しを行う必要がないように、データベース内で結合を行い、すべてを一度に戻します。

  2. 表示されているときに、id列を非表示に設定できます。これは、コードの後ろにまたはaspxで行うことができます。

  3. 編集時に、ルックアップテーブルを基にした値であれば、ドロップダウンリストを作成する必要があります。編集が必要な場合はさらに情報を問い合わせることができます。そうでない場合は、上位2つの点があなたのニーズをカバーする必要があります。

関連する問題