• ベストアンサー

データグリッドビューの一番最初の行に列を追加したい

お世話になっています。 VB2005です。 タイトル通りなのですが、DataGridViewの一番最初の列(0列目)に列を追加したいのです。 DataGridView1.Columns.Add() では一番最後の行に追加されてしまいます。 ヘルプやネット上を見てもわからず・・・ どなたかご存じの方教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
noname#187541
noname#187541
回答No.2

こんばんは。 AddではなくInsertを使います。 TextBoxColumnを追加します。 Dim TextBoxColumn As New DataGridViewTextBoxColumn Me.DataGridView1.Columns.Insert(0, TextBoxColumn) でとりあえず追加できます。 後はヘッダーに項目名を設定したり、列幅を設定し足してください。

sineminna
質問者

お礼

できました! ありがとうございます!

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

noname#60992
noname#60992
回答No.1

DataGridView1.Columns.Add(1)

sineminna
質問者

補足

その式ではエラーが出ます。(´・ω・`)

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • データグリッドビューの任意の列を削除

    VB2010にて、下記のコードを実行すると、左端にいらない列が表示されます。 左端にコンボボックスを表示したいのですが、うまくいきません。 左端の列を削除する方法。 または、左端にコンボボックスを表示する方法を教えていただけませんでしょうか。 ご存知の方、どうぞよろしくお願いいたします。 '■■■データグリッドビューセット■■■ '初期化 Me.DataGridView1.Columns.Clear() '最下部の新しい行を非表示 Me.DataGridView1.AllowUserToAddRows = False '行追加 Me.DataGridView1.RowCount = 気筒数 + 2 'コンボボックス列を追加 Dim i As Integer Dim BS As New BindingSource() For i = 1 To 系列数 BS.Add(系列名(i)) Next i Dim ComboBox As New DataGridViewComboBoxColumn() ComboBox.HeaderText = "系列名を選択" ComboBox.DataSource = BS Me.DataGridView1.Columns.Add(ComboBox) Me.DataGridView1.Columns(0).Width = 110

  • VB2010でデータグリッドビューに列追加

    VB2010でデータグリッドビューを使用したいのですが、 下記のコードを実行すると、 ※エラー1「指定された列は DataGridView コントロールに既に属しています。」がでます。 列インデックスがいるのかなと、コードを追加してみると ※エラー2「プロパティIndexはReadOnlyです」がでました。 どう直せばよいかわかるかた教えてください。 どうぞよろしくお願いします。 変数に入っているもの 系列数=2 系列名(0)=deg 系列名(1)=V 系列名(2)=P Public Class Form2 Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Me.Text = "データビュー" '初期化 Me.DataGridView1.Columns.Clear() '列追加 Dim i, j As Long Dim TBColumn As New DataGridViewTextBoxColumn() For i = 0 To 系列数 TBColumn.Name = 系列名(i) TBColumn.Index = i '←※エラー2 エラー後に追加してみた Me.DataGridView1.Columns.Add(TBColumn) '←※エラー1 Next i '行追加 Me.DataGridView1.RowCount = データ数 'データ追加 For j = 1 To データ数 For i = 0 To 系列数 Me.DataGridView1(系列名(i), CInt(j - 1)).Value = グラフデータ(i, j) Next i Next j '列幅設定 For i = 0 To DataGridView1.Columns.Count - 1 Me.DataGridView1.Columns(i.ToString).Width = 30 Next i End Sub End Class

  • DataGridViewの行追加について。

    初めまして、VB初心者ですが皆様よろしくお願いいたします。 今、VB2005でDataGridViewを使用した入力システムを作成しています。 1~10行目まで入力したデータに対して、5行目に新規行を追加したいのですが。 この場合、現在入力されている5~10行目のデータを、6~11行目に退避した後 「DataGridView1.Rows.Add(DataGridView1.Focus」で5行目に新規行を追加すればいいのでしょうか? うまくいかず悩んでいます。 ご教授よろしくお願いいたします。

  • データグリッドビューの行にチェックボックス

    VB2010で、データグリッドビューの行にチェックボックスを入れたいのです。 DataGridViewCheckBoxCellでできるかなと思っているのですが、 下記のコードではチェックボックス行が追加されません。 どう修正すればよいでしょうか。 ご存知の方教えてください。よろしくお願いします。 Dim CB As New DataGridViewCheckBoxCell Me.DataGridView1.Rows.Add(CB)

  • VB.NET DataGridView 行の追加

    VB2010 WinXPにて開発しています。 「DataGridView1.Rows.Add()」で行を追加すると入力行の上の行が追加されるのは何故でしょうか? 下らない質問かと思いますが、行き詰まってます。 分かる方がいましたら、教えて下さい。 よろしくお願い致します。

  • DataGridViewで行選択して、対応するDataTableの行を得るには?

    いつもお世話になっております。VB2005環境です。 DataGridViewの行を選択したときに、そのソースであるDataTableの同じ行のデータを参照するには、どうしたらいいでしょうか。DataTableのデータをまるごとDataGridViewに表示しているわけではないので、必要に応じて直接DataTableから取得したいです。とても初歩的な質問だと思うのですが・・・。 DataGridView1.DataSource = DataTable  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ Dim r As Integer = DataGridView1.CurrentCell.RowIndex Dim str As String str = DataTable.Rows(r)("項目名") MsgBox(str)  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ このように行インデックスを取得してやってみたのですが、これだとDataGridView上でソートすると行番号が変わってしまい、DataTable側の対応する行のデータが得られません。 もう少し詳しく現状を書くと、まずCSVファイルからデータをロードして、DataTableに渡しています。そして、その内容をDataGridViewに表示しているのですが、表示する内容はデータテーブル通りの構造ではなく、表示する必要がある項目だけを選んで、1つずつカラムを追加してバインドいます。  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ’自動で列を追加しないようにする DataGridView1.AutoGenerateColumns = False ’データソースを指定する DataGridView1.DataSource = DataTable ’1つ1つ順番などを変えながら列を追加していく Dim column1 As New DataGridViewTextBoxColumn() DataGridView1.Columns.Add(column1) column1.Name = "Date" column1.HeaderText = "日付" column1.DataPropertyName = "F4" Dim column2 As New DataGridViewTextBoxColumn() DataGridView1.Columns.Add(column1) column1.Name = "Locatoin" column1.HeaderText = "場所" column2.DataPropertyName = "F1" ・ ・ ・  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ こんな感じでなので、表示されていない列のデータについては、必要に応じて直接DataTableから取得したいと思います。アドバイスよろしくお願いいたします<(_ _)>

  • C# 列の挿入

    どうしてもわからないことがありまして,datagridview上に列を追加しようとすると, 「列のFillWeght値の合計が65535を超えることはできません」 というエラーが出ます.追加する列数は8760列ですが,このエラーは列数が65535列を超えている? ということなのでしょうか? どうにも解決できないので,どなたかご教授願えないでしょうか? dataGridView1.Columns.Add("clmName1", "日付"); for (int n = 0; n < 8760; n++) { String ss1 = String.Format("Time{0}", n); String ss2 = String.Format("データ{0}", n); this.dataGridView1.Columns.Add(ss1, ss2); }

  • DataGridViewの列スタイルについて

    開発環境  VB.NET  SQLServer2008 DataGridViewにDBから取得したデータを一覧表示させようと思っています。 テキストボックスの列、チェックボックス、コンボボックスの列を 追加させることはできたのですが、同一列に異なる種類のコントロールを 配置するということはできるのでしょうか? 例えば・・・ -------------- 行No |列1 -------------- 1   |□ -------------- 2   |□▼ -------------- ・行No1、列1のセルはチェックボックスのセルを表示する ・行No2、列1のセルはコンボボックスのセルを表示する 列を追加しているコードは以下の通りです。 Form_Load時に実行しています。 ------------------------------------------------------------- Private Sub initializeDgvTest() Dim dgv As DataGridView = Me.dgvTest dgv.Columns.Clear() dgv.AutoGenerateColumns = False Dim colLabel As New DataGridViewTextBoxColumn() colLabel.DataPropertyName = "LABEL" colLabel.Name = "LABEL" colLabel.HeaderText = "ラベル" dgv.Columns.Add(colLabel) Dim colVal As New DataGridViewCheckBoxColumn() colVal .DataPropertyName = "VALUE" colVal .Name = "VALUE" colVal .HeaderText = "値" dgv.Columns.Add(colVal ) End Sub ※データのバインドについて  DataTableをDataGridViewのDataSourceに設定しています。 ------------------------------------------------------------- 上記のコードでいうと、 「VALUE」列のコントロールの種類をセル単位で変更しようとしています。 何かいい方法がありましたら、アドバイスよろしくお願いします。 以上です。

  • vb.net datagridviewの列位置変更

    vb.net datagridviewの列位置を変更する方法を教えて下さい。 データグリッドビューにDataTable(DBから抽出したデータ)を割り当てました。 DataGridView1.DataSource = DataTable1 ここに、カラムを追加しました Dim column As New DataGridViewButtonColumn() '列の名前を設定 column.Name = "Button" '全てのボタンに"詳細閲覧"と表示する column.UseColumnTextForButtonValue = True column.Text = "詳細閲覧" 'DataGridViewに追加する DataGridView1.Columns.Add(column) この追加したカラムを一番左に表示したいです。

  • DataGridViewの列に型を設定

    VB2005Expressで開発をしています。 DataGridViewに追加した列に型を設定したいのですが、方法をご存知の 方がいらっしゃいましたら教えて下さい。 列の追加は下記で行いました。 '列を追加できるよう、列の追加機能を一時的に使用可にする '(下記で列を追加するため) Me.ClsDataGridViewEx1.AutoGenerateColumns = False '列を追加 Dim txtColum1 As New DataGridViewTextBoxColumn txtColum1.Name = "追加列" txtColum1.HeaderText = "追加列" ClsDataGridViewEx1.Columns.Add(txtColum1)

このQ&Aのポイント
  • ブラザー プリンター DCP-J988N で黒色の印字ができない問題が発生しています。プリンター画面からクリーニングを行いましたが、状況は変わりません。
  • お使いの環境はWindows10で、プリンターは無線LANで接続されています。
  • 問題が発生しているのはブラザー製品であり、黒色の印字ができないというトラブルが報告されています。
回答を見る