- PR -

datagridの表示について

投稿者投稿内容
JOJO
会議室デビュー日: 2005/07/13
投稿数: 14
投稿日時: 2005-09-26 14:26
お世話になります。

datagridの表示についてお聞きしたいのですが、
通常のdatagridは上にヘッダーがあり下にデータ部分となっていますが、
ヘッダーを左にデーター部分を右に表示したいのです。
イメージ的にはdatagridを左90度回転させるという感じです。

どなたかやり方を知っておられましたらご教授ください。
よろしくお願いします。
trapemiya
大ベテラン
会議室デビュー日: 2005/07/30
投稿数: 102
投稿日時: 2005-09-26 14:33
webアプリかwindowsフォームかわかりませんが、どちらにしても簡単には無理です。
ヘッダーを左にデーター部分を右に表示するように工夫して表示するしかありません。
webアプリかwindowsフォームかによって、当然ですが実現の仕方は全く異なります。
まずは、ここをはっきりさせましょう。
JOJO
会議室デビュー日: 2005/07/13
投稿数: 14
投稿日時: 2005-09-26 14:41
すいません。記入し忘れてました

webformでやっております
trapemiya
大ベテラン
会議室デビュー日: 2005/07/30
投稿数: 102
投稿日時: 2005-09-26 15:29
泥臭いのですが、データテーブル上で行と列をひっくり返し、ヘッダも1列目に含めてしまって、このデータテーブルをDataGridにバインドするぐらいの方法しか思いつきません・・・。
たぶん、私の知る限りでは、他の方法では無理のような気がします。
にしざき
ぬし
会議室デビュー日: 2003/06/30
投稿数: 304
投稿日時: 2005-09-26 15:47
Repeater を複数使ってやる方法かなぁ。
ちょっと今すぐに試す環境にないのでイメージだけですが、
コード:
<table>
  <tr>
    <asp:Repeater runat="server">
      <ItemTemplate>
        <td><asp:Label runat="server" Text='<% DataBinder.Eval(...) %>' /></td>
      </ItemTemplate>
    </asp:Repeater>
  </tr>
  <tr>
    <asp:Repeater runat="server">
      <ItemTemplate>
        <td><asp:Label runat="server" Text='<% DataBinder.Eval(...) %>' /></td>
      </ItemTemplate>
    </asp:Repeater>
  </tr>
</table>


のような感じで、各Repeater に同じデータソースを設定し、バインドすればいいんじゃないかと思います。
NAL-6295
ぬし
会議室デビュー日: 2003/01/26
投稿数: 966
お住まい・勤務地: 東京
投稿日時: 2005-09-26 15:47
NAL-6295です。

DataGridだと難しいですね。
DataListかRepeaterで、その部分を作りこむ必要があります。
JOJO
会議室デビュー日: 2005/07/13
投稿数: 14
投稿日時: 2005-09-28 17:12
皆さんありがとうござました。
とりあえずこの件はdatagridでやらない方向に持っていこうと思います。

もうひとつ質問があるですが、
datagridにボタンカラムをつくっているのですが、
ボタンの形がリンクボタンの場合イベントをとれるのですが、
プッシュボタンのときにイベントに入ってくれないのですが
対処方ご存知の方いらっしゃいましたらご教授ください。
HTMLのソースのほう乗せます。
<asp:datagrid id="DataGrid2" style="Z-INDEX: 110; LEFT: 368px; POSITION: absolute; TOP: 640px"runat="server" AutoGenerateColumns="False" OnItemCommand="DataGrid2_SelectedIndexChanged">
  <Columns>
  <asp:BoundColumn DataField="dumy" HeaderText="dumy"></asp:BoundColumn>
  <asp:ButtonColumn Text="ボタン" HeaderText="dasdas"
ButtonType="PushButton"></asp:ButtonColumn>
  </Columns>
</asp:datagrid>
となってます.

Sub DataGrid2_ItemCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles DataGrid2.ItemCommand
と書いているのですが、上記処理に入ってもらえないのです
SE卵
大ベテラン
会議室デビュー日: 2004/10/22
投稿数: 135
投稿日時: 2005-09-28 17:55
こんにちは。

OnItemCommand="DataGrid2_SelectedIndexChanged"

ん?DataGrid2_ItemCommandじゃないんですか?というか、
上記の記述を消すだけでいいような。。。どうでしょう?

スキルアップ/キャリアアップ(JOB@IT)