2016-04-30 50 views
0

我有一個DataGridView,我將所有的列設置爲false。
現在我設置了DataSource,Kaboom,猜猜看是什麼?第一列是可見的。爲什麼會發生?什麼原因?
有沒有辦法來防止這種默認行爲或使用其他操作來覆蓋它?Datagridview顯示設置數據源後的第一列,當所有的列都不可見時

+0

http://stackoverflow.com/questions/6359234/datagridview-id-column-will-not-hide請在這裏看到這裏, Hope help – Berkay

回答

0

儘管B.Yaylaci的suggested link的答案對我有幫助,但我覺得他們對於未來的開發者維護你的代碼很晦澀 - 如果你想讓你的ID列在某些時候可見但不想它最後顯示在列中?在更改DataSource時更正這些問題的一種簡單方法是在DataGridView.DataBindingComplete事件中設置列可見性以獲得更一致的行爲。

例如,如果由於某種原因,我希望DataGridView出現完全是空的*結合,直到我另有決定(某種邏輯或用戶交互的?)之後,那麼我會做到以下幾點:

private void DataGridView1_DataBindingComplete(object sender, DataGridViewBindingCompleteEventArgs e) 
{ 
    foreach (DataGridViewColumn col in this.dataGridView1.Columns) 
    { 
     col.Visible = false; 
    } 

    this.dataGridView1.RowHeadersVisible = false; 
    this.dataGridView1.ScrollBars = ScrollBars.None; 
} 

*注意:如果列以後可見,則需要重置RowHeadersVisibleScrollBars

相關問題