/ /データベースに接続せずにDataGridViewを持つことは可能ですか? - c#、winforms、datagridview

データベースに接続せずにDataGridViewを持つことは可能ですか? - c#、winforms、datagridview

私はWindows DataGridViewを持つ必要がありますC#構造体のデータを表示します。誰かが私に覚えている事例を知っていますか?インターネット上のすべての例では、SQLデータベース、Oracleデータベース、またはAccessデータベースが使用されています。しかし、DataGridViewにデータを入れるための行数が少なく、列数が少ないC#テーブルのような構造体が必要です。

ありがとう

回答:

回答№1は1

はい、リストなどのIEnumerableアイテムにバインドすることができます

http://msdn.microsoft.com/en-us/library/y0wfd4yz%28v=vs.90%29.aspx

WinForms DataGridView - リストプロパティを持つオブジェクトへのデータバインド(列数が可変)

いくつかのリンク


回答№2の場合は1

DataGridViewsは、ローカルに格納されたBindingList(http://msdn.microsoft.com/en-us/library/ms132679%28v=vs.110%29.aspx)をデータソースとして使用します。


回答№3の場合は1

あなたの質問の私の理解。

はい、これはdatatableで可能です。 Datable行は1つずつ繰り返し、DataGridviewに直接割り当てます。

ここで私は一例を挙げます:

            foreach (DataRow rows in dt.Rows)
{
int n = dataGridView1.Rows.Add();

dataGridView1.Rows[n].Cells[0].Value = rows[0].ToString();
dataGridView1.Rows[n].Cells[1].Value = rows[1].ToString();
dataGridView1.Rows[n].Cells[2].Value = rows[2].ToString();
dataGridView1.Rows[n].Cells[3].Value = rows[3].ToString();
}

回答№4の場合は1

他にも指摘されているように、DataGridView(DGV)を使用して、バインドされていない、またはバインドされた方法で作業することができます。

私の好みは常にバインドモードを使うことです。このメソッドを使用すると、DGV内部(ほとんどの場合)を無視することができます。グリッドがバインドされている基底のデータを変更して、Windowsフォームのデータバインディングメカニズムを機能させることができます。

私がDGVの内部構造を理解できないと言うと、DGVイベントを処理してデータを出し入れする必要はありません。

他の人に言及されているように、DGVをIEnumerableを実装するものにほとんどバインドすることができます。したがって、カスタムオブジェクトのリストがある場合、DGVはそれをデータソースとして使用します。

私はあなたがこれでうまくいくことを願っています。

乾杯