イメージに示すように、SQL データベース テーブルがあります。列Location_Instance (つまり、画像の 2 番目の列) の値を のヘッダーとして表示する必要がありGridView
ます。現在、列をにコピーし、ListBox
を使用しListBox
てヘッダーとして表示しています。しかし、データソースから直接表示したい。誰でも親切にこれを手伝ってもらえますか。前もって感謝します。
4 に答える
これを行う 1 つの方法は、必要に応じて列を設定した新しい DataTable を作成する追加のコードを記述し、データベース内のデータから必要に応じて行を挿入することです。
SQLでそれを行うのは難しいです。
これを行う方法については、 http://msdn.microsoft.com/en-us/library/hfx3s9wd.aspxを参照してください...
列の値をグリッド ビューのヘッダーとして直接設定することはできません。まず、ViewState や任意のコントロールなどの場所に保存する必要があります。
選択クエリを作成してデータを取得する
お気に入り
Select * from Tbl where 'Condition'
データテーブルにデータを入力します (例: dt)。次に、データをグリッドビューに直接バインドします。お気に入り
Gridview.Datasource = dt; Gridview.Databind();
その後、直接ヘッダーが表示されます。
次のように表示するLocation_Type
場合Location Type
は、次のように SQL クエリを記述する必要があります。
Select Location_Type as [Location Type] .... from Tbl where 'Condition'
論理的にこれは不可能です。この場合、複数の列を持つ単一の行にデータの行を表示したいからです。あなたの場所のインスタンスが増加した場合、あなたは何をしますか??
ただし、location_instance の数が固定されている場合は、回避策があります。しかし、これも限られています。ロケーション インスタンスは、列ではなくグリッド ビューの行として表示できます。行がヘッダーのように見えるようにスタイルを設定できます。
列データを行データに変換する方法を知るには、以下のリンクを確認してください。 http://blog.sqlauthority.com/2008/06/07/sql-server-pivot-and-unpivot-table-examples/
したがって、データを行に取得したら、グリッド ビューを使用してデータをグリッド ビューに簡単にバインドできRowDataBound
ます。