2016-08-23 78 views
0

我的DataGridView顯示額外的列。該應用程序是一個Windows窗體應用程序。我可能做錯了什麼?Windows窗體:DataGridView中的額外列

public ConvertisForm1() 
    { 
     InitializeComponent(); 
     openFileDialog.Filter = "Files| *.chm;*.htm;*.html;*.rtf;*.xls;*.xlsx;*.xps;*.doc;*.docx";  
    dataGridView.AutoGenerateColumns = false; 
    dataGridView.RowHeadersVisible = false; 
    dataGridView.ColumnCount = 5; 

    dataGridView.RowCount = 20; 
    //delete button 
    var deleteDataGridViewButtonColumn = new DataGridViewButtonColumn 
    { 
     HeaderText = "", 
     Name = deleteDataGridViewButtonColumnName, 
     Text = "X", 
     Width =20 
    }; 
    dataGridView.Columns.Insert(DeleteColumnIndex, deleteDataGridViewButtonColumn); 

    dataGridView.Columns[FileNameAndPathColumnIndex].Width=250; 
    dataGridView.Columns[FileNameAndPathColumnIndex].HeaderText = "File Path"; 

    //browse button 
    var browseDataGridViewButtonColumn = new DataGridViewButtonColumn 
    { 
     HeaderText = "", 
     Name = browseDataGridViewButtonColumnName, 
     Text = "...", 
     Width = 30 
    }; 
    dataGridView.Columns.Insert(BrowseButtonColumnIndex, browseDataGridViewButtonColumn); 

    //convert to dropdown 
    var convertToDataGridViewComboBoxColumn = new DataGridViewComboBoxColumn 
    { 
     HeaderText = "Convert to", 
     Name = convertToDataGridViewComboBoxColumnName, 
     DataSource = new ArrayList { convertToComboBoxDefault, "pdf", "word"}, 
     Width = 100, 
     DefaultCellStyle = 
     { 
      NullValue = convertToComboBoxDefault, 
      DataSourceNullValue = convertToComboBoxDefault 
     } 
    }; 

    dataGridView.Columns.Insert(ConvertToFileTypeColumnIndex, convertToDataGridViewComboBoxColumn); 

    var convertDataGridViewButtonColumn = new DataGridViewButtonColumn 
    { 
     HeaderText = "", 
     Name = convertDataGridViewButtonColumnName, 
     Text = "Convert", 
     Width = 50 
    }; 
    dataGridView.Columns.Insert(ConvertButtonColumnIndex, convertDataGridViewButtonColumn); 
    dataGridView.AllowUserToResizeColumns = false; 
    dataGridView.AllowUserToResizeRows = false; 
    #endregion 
} 

enter image description here

+2

是這個dataGridView.ColumnCount = 5; ? – active92

+0

@ active92您不必提出這個問題。 :-) – LarsTech

回答

2

你試過DataGridView1.AutoGenerateColumns = false;

,或者你可以明確所有添加新列

列前見鏈接以供參考:https://stackoverflow.com/a/7430993/5694113

+1

他的autogeneratedcolumns已被設置爲false,但他將他的列數設置爲5.我認爲這就是他獲得5列的原因。 – active92

+0

上帝保佑@TheQuestioner。刪除ColumnCount = 5,清除列(在添加列之前)解決了問題。 –

+0

如果您認爲帖子幫助您解決了您的問題。請將其標記爲答案。很高興我幫助:) – TheQuestioner

相關問題