2016-11-20 43 views
0

datagridviewをデータソースにバインドしました。すべてのヘッダーはで、列のコレクションにdatapropertynameが設定されています。列見出しを削除せずにすべての行を消去する方法datagridview c#

Iヘッダーも消え、私は再度のDataGridViewを満たす場合、ヘッダテキストは、データベースの列名である

DataGridView1.DataSource = null; 

を使用してのDataGridViewをクリア。

Before refilling datagridview

After clearing and refilling the datagridview

私は

MyDataGridView.DataSource = MyDatabase.MyTable.Select(rows => new 
       { 
        ProductName = rows.Product.Name, 
        Quantity = rows.Quantity, 
        SalePrice = rows.SalePrice, 
        SubTotal = rows.Quantity * rows.SalePrice 
       }).ToList(); 

私のDataGridViewを埋めるために、これを行うので、それが列ヘッダーを削除せずにすべての行をクリアすることは可能でしょうか?

+0

はあなたが偽 'DataGridView.AutoGenerateColumnsを=設定されていますか;'? – McNets

+0

それは働いていません –

+0

少なくともあなたのコードは、クエリだけでなく、関連する部分を表示する必要があります。 – McNets

答えて

0

あなたはすべての行をクリアするには、このコマンドを使用することができます。

MyDataGridView.Rows.Clear(); 
+0

私は試してみますそれが、私はこのエラー 「System.InvalidOperationException」種類の例外はのSystem.Windows.Forms.dllで発生しましたが、ユーザーコード 追加情報で処理されていなかった。RowsコレクションはできませんDataGridViewコントロールが変更通知をサポートし、削除を許可するIBindingList以外のものにデータバインドされている場合、プログラムによってクリアされます。 –

+0

問題が見つかりました。クエリの最後にToList()__を削除するだけです。どうもありがとう –

関連する問題