A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
はい、Windowsフォームアプリでデータグリッドビューのスキーマをそのままに空のデータテーブルを取得することは可能です。
**方法1:DataTable.Clone()メソッドを使う**
1. データグリッドビューの`DataSource`プロパティから現在のデータテーブルを取得します。
2. 取得したデータテーブルの`Clone()`メソッドを呼び出して、スキーマのみをコピーした新しいデータテーブルを作成します。
```c#
DataTable dataTable = (DataTable)dataGridView.DataSource;
DataTable emptyDataTable = dataTable.Clone();
```
**方法2:新しいDataTableオブジェクトを作成し、列を追加する**
1. 新しいDataTableオブジェクトを作成します。
2. データグリッドビューの各列に対して、列名、データ型、その他のプロパティを新しいDataTableオブジェクトに設定した列を追加します。
```c#
DataTable emptyDataTable = new DataTable();
foreach (DataGridViewColumn column in dataGridView.Columns)
{
emptyDataTable.Columns.Add(new DataColumn(
column.Name,
column.DataType,
column.AllowDBNull));
}
```
**補足**
* 上記のコードは、データグリッドビューにバインドされているデータソースがDataTableであることを前提としています。
* データソースが別の型の場合は、適切な型に変換してからDataTable.Clone()メソッドまたは列の追加を行う必要があります。
* データグリッドビューの列に設定されている書式やその他のプロパティは、新しいデータテーブルにはコピーされません。必要に応じて、新しいデータテーブルの列に個別に設定する必要があります。
**参考情報**
* [DataTable.Clone()メソッド](https://docs.microsoft.com/ja-jp/dotnet/api/syst …
* 新しいDataTableオブジェクトを作成する [無効な URL を削除しました]
* [DataColumnクラス](https://docs.microsoft.com/ja-jp/dotnet/api/syst …
上記以外にも、データグリッドビューのスキーマをそのままに空のデータテーブルを取得する方法はあるかもしれませんが、上記の方法が最も一般的で簡単です。
ご参考になれば幸いです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript Cookieに保存されない 1 2023/12/26 18:45
- Oracle sqlで質問です。 Aテーブルは店番、客番、登録日で一意となります。 Bテーブルは店番、客番、登録番 3 2023/11/24 10:46
- Excel(エクセル) excel access連携 このテーブルは空ですと表示 2 2024/02/16 16:25
- PHP PHPとHTML+Xamppの掲示板で画像も投稿できるように 3 2024/04/27 09:33
- IT・エンジニアリング ドメイン駆動設計の値オブジェクトについて質問 1 2023/05/13 02:50
- Oracle 質問です。 下記のテーブルとデータがあり、 取得想定結果のように出力したいです。 下記のsqlだと0 2 2023/05/23 19:10
- PostgreSQL 列が存在しないと言われる 2 2023/02/10 18:33
- PHP PHP MySQLに画像を直接保存 2 2022/06/05 11:50
- MySQL 複数DBテーブルからのデータ取得 3 2022/05/17 15:02
- Oracle sqlで質問です。 idを元にidに紐付くデータで住所コードがjpのみのデータ以外のidを取得したい 4 2023/03/20 17:41
このQ&Aを見た人はこんなQ&Aも見ています
-
新NISA制度は今までと何が変わる?非課税枠の拡大や投資対象の変更などを解説!
少額から投資を行う人のための非課税制度であるNISAが、2024年に改正される。おすすめの銘柄や投資額の目安について教えてもらった。
-
システムエンジニアの適正について
C言語・C++・C#
-
C言語をコンパイルするとコンピュータ上でどう動くかというコードになるみたいな説明をよく聞くのですがこ
C言語・C++・C#
-
mallocについて
C言語・C++・C#
-
-
4
応用情報技術者試験の令和元年秋、午後のプログラムの問題がわからないです。
C言語・C++・C#
-
5
質問失礼します。 プログラム言語を一つも知らないのですが、C♯の勉強をしてみたいです。おすすめの教材
C言語・C++・C#
-
6
あなたは、Excelはどうやって学びましたか?
C言語・C++・C#
-
7
インクリメント演算子のみを用いて、下に表示されるようにプログラムします 99 100 102 103
C言語・C++・C#
-
8
MACで動く実行ファイルをWindowsで作る方法(クロスコンパイラ紹介ください)
C言語・C++・C#
-
9
Linuxでの開発環境構築や設定のコツ
C言語・C++・C#
-
10
Webプログラムってネイティブアプリプログラムに比べて遥かに簡単すぎる気がするのですが気の所為ですか
その他(プログラミング・Web制作)
-
11
double型が正常に認識されていない恐れ
C言語・C++・C#
-
12
C言語 配列と関数の練習問題
C言語・C++・C#
-
13
なんかC言語でプログラム書いてると脳汁というかエクスタシーというかなんかすげえ気持ちいいんですけどな
C言語・C++・C#
-
14
Notepad++の関数リスト表示の変更方法をお教えください。
C言語・C++・C#
-
15
どちのほうがすきですか?
C言語・C++・C#
-
16
Linux Cプログラミングを学ぶための書籍
C言語・C++・C#
-
17
研究室志望の提出文書
C言語・C++・C#
-
18
プログラム言語について。
その他(プログラミング・Web制作)
-
19
プログラミングについて。 1つのループで Aという計算と Bという計算をするのと これらを分けて2つ
C言語・C++・C#
-
20
右ビットシフト
C言語・C++・C#
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Windows formアプリで データグ...
-
ACCESSテーブルを RecordSet以...
-
accessのフォームを使ってテー...
-
select文の戻り値を変数に格納...
-
ASP.NET:複数結合テーブルのデ...
-
Perlで変数内の日本語が文字コ...
-
アクセスのデータを編集しなが...
-
ExcelVBAを使って、値...
-
【Excel】指定したセルの名前で...
-
screenupdatingが機能しなくて...
-
特定のセルが空白だったら、そ...
-
【Excel VBA】指定行以降をクリ...
-
VBA ユーザーフォーム ボタンク...
-
VB.NETで DataRow()を利用して...
-
データ数をカウントしたいのですが
-
ListView 項目の選択/選択解除...
-
Excelで指定した日付から過去の...
-
VBA実行後に元のセルに戻りたい
-
[エクセル]連続する指定範囲か...
-
VBA リストボックス内の値を複...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
SQL文(テーブル項目名が特殊文...
-
select文の戻り値を変数に格納...
-
【ACCESS】リレーションを組ん...
-
ACCESSテーブルを RecordSet以...
-
VBとACCESSを接続したい
-
テーブルというグローバル変数
-
DBの読み込み順について
-
access コンボボックス初期表示...
-
accessのフォームを使ってテー...
-
DataGridViewで編集した内容を...
-
外部キーのリレーションが設定...
-
HTML&CSS Javascriptによる動...
-
ASP(VBScript)で自動連番
-
Perlで変数内の日本語が文字コ...
-
EF(コードファースト)のコン...
-
ASP.NET:複数結合テーブルのデ...
-
フラッシュの画像を合わせるパ...
-
テーブルへのデータ投入について。
-
教えてアクセス2007!「在...
-
ExcelVBAを使って、値...
おすすめ情報