2011-08-17 17 views
0

イベントUserAddedRowを使用して新しい行を追加することはできますか? それは、あなたは例がありますか?Winform DataGridView UserAddedRow新しい行を追加する

ありがとうございます。

+0

あなたは何を試しましたか?何がうまくいくのですか?例外/エラーがあった場合 - それらも表示してください... – Yahia

答えて

2

UserAddedRow行が追加された後にイベントが発生します。あなたは何かを追加するためにそれを使用することはできません。それは既に起動されたので、afterという名前が既に追加されています。 MSDNによる

は、ユーザーがDataGridViewの コントロールに行を追加完了したときに発生します。

+0

ありがとう、どうすれば新しい行を追加できますか? – user609511

+0

私はmsdnの例のようにDataTable経由でデータバインディングを使用すると言うでしょう。ここで確認してください:http://msdn.microsoft.com/en-us/library/system.windows.forms.datagrid.aspxコード例だけでなく、記事全体を読んでください。 – Tigran

+0

お世話になってくれてありがとうございましたが、どうやって行のNEW値を取り戻すことができますか?イベントの – user609511

1

データバインディングを使用していない場合は、手動で列と行を追加する必要があります。

dgvApplications.Columns.Add("Col1", "Column 1"); 
dgvApplications.Columns.Add("Col2", "Column 2"); 
dgvApplications.Rows.Add("Col1Value", "Col2Value"); 

しかし、通常はデータバインディングが最適です。プロパティは、通知が配下のモデルが変更されたときにグリッドが自動的に更新することができます変更

applications.Add(new Application{ File="blah.txt" }; 

BindingList<Application> applications = new BindingList<Application>(); 
dgvApplications.DataSource = applications; 
// set AutoGenerateColumns to false and manually add columns to get pretty column names. 
// set AutoGenerateColumns to true to not worry about adding columns in early prototyping 
dgvModules.AutoGenerateColumns = true; 

はその後 Application実装している場合 INotifyPropertyChangedあなたはこのような何かを行うことができます。

データバインディングオプションを使用すると、GUIとデータが分離されます。 「Model-View-Controller」デザインパターンは、後でGUIを再設計したり、Webや電話アプリなどのセカンダリインターフェイスを追加する必要がある場合に役立ちます。 http://msdn.microsoft.com/en-us/library/ff649643.aspx

関連する問題