- PR -

動的に生成するDataGrid等

1
投稿者投稿内容
ういち
会議室デビュー日: 2002/12/16
投稿数: 8
投稿日時: 2002-12-16 19:27
はじめまして、ういちと申します。

動的に変化する縦横のdataGrid(テーブル等)を生成したいのですが。
イメージとしては。↓
______________________
|  |<<横1>>|<<横2>>|・・・・・・
|縦1|TextBox|TextBox|・・・・・・
|縦2|TextBox|TextBox|
  ・
  ・
  ・

上記のような
前ページで縦列、横列の項目を選択してもらいその数により
縦横の項目名やテキストボックスが変化する仕組みなのですが。
テーブルで生成はできるのですが、ポストバックするとテーブルごと
消えてしまいます。
のでDataGridでやろうと思っているのですが、テキストボックスを挿入
することができません。

ASP.NETにおいて上記のようなマトリクス表を作る場合は
皆さんどのようにされているのでしょうか?
ぜひご教授ください。宜しくお願いします。

cats
大ベテラン
会議室デビュー日: 2002/11/29
投稿数: 221
お住まい・勤務地: 東京
投稿日時: 2002-12-17 10:56
Webフォームにおけるデータ連結が参考になると思います。
こんな感じでしょうか?
コード:
<%@ page language="C#" %>
<%@ import namespace="System.Data" %>
<html><head>
<script runat=server>
private void Button1_Click(object source, System.EventArgs e)
{
  DataTable dt = new DataTable();
  int i,k, n = int.Parse(TextBox1.Text);
  for (i=0;i<n;++i) dt.Columns.Add(new DataColumn("col"+i));
  for (k=0;k<10;++k) 
  {
    DataRow dr = dt.NewRow();
    for (i=0;i<n;++i) dr[i] = "<input type=text>";
    dt.Rows.Add(dr);
  }
  DataGrid1.DataSource = dt;
  DataBind();
}
</script>
<title>test</title></head>
<body><form runat=server>
<asp:TextBox id="TextBox1" runat=server value=3 />
<asp:Button id="Button1" runat=server Text="設定" OnClick=Button1_Click /><br>
<asp:DataGrid id="DataGrid1" runat=server /></form>
</body></html>


asp:TextBoxを動的に作っても解釈されない思います。
1

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