DOBON.NET DOBON.NETプログラミング掲示板過去ログ

DataGrid、新規行の追加

  • 題名: DataGrid、新規行の追加
  • 著者: nok
  • 日時: 2007/06/11 14:57:23
  • ID: 19828
  • この記事の返信元:
    • (なし)
  • この記事への返信:
    • (なし)
  • ツリーを表示
環境/言語:[XP, VB.NET, Framework1.1]
分類:[.NET]

現在、.NET2003を使用して、プログラムを作成しています。
プログラムは以下の通りです。

'Form_Load
'先頭にチェックボックス列(Boolean型)を追加する
'追加列(DataColumn)の作成
Dim dc As DataColumn
dc = New DataColumn("削除", GetType(Boolean))
dc.DefaultValue = False
dc.AllowDBNull = False

'DataTableへ追加
Table.Columns.Add(dc)

'Accessから全データをIDの昇順に読み込む
'格納用データテーブルへSQLの実行結果を読み込む
Adapter.Fill(Table)

'全列のテーブルスタイルの指定
'チェックボックス列はAllowNull = False
'IDの列のみReadOnly = True

'DataGridの表示
'表示するデータテーブルの指定
DataGrid1.SetDataBinding(Table, "")

'新しい行の追加の禁止処理
'新しい行の追加を禁止する
Table.DefaultView.AllowNew = False

となっています。
この後、ボタンをグリッドの外に配置し、ボタンを押すと新規行が追加されるというイベントを作成しようとしたのですが、

   Table.Rows.Add(Table.NewRow)

という命令では、ID列の読み取り専用が外れず、テーブルスタイルを新規作成すると、すべての行から読み取り専用が解除されてしまいました。
テーブルスタイルをForm_Load時に設定せず、

   Table.Columns("社員番号").ReadOnly = True

としてみて、ボタン追加時に

   Table.Columns("社員番号").ReadOnly = False

としてみても今度は読み取り専用が解除されずに行が追加されてしまいました。
なんとか、新規行のみ、ID列に読み取り専用がかかっていない列として追加することはできないのでしょうか?

ご教授、宜しくお願いします。

DOBON.NET | プログラミング道 | プログラミング掲示板