Столбцы DataGridView по-прежнему автоматически создаются даже при AutoGenerateColumns = False - PullRequest
0 голосов
/ 07 сентября 2010

У меня есть DataGridView и для свойства AutoGenerateColumns установлено значение false, но когда я строю свой проект, столбцы генерируются автоматически.

Я вижу свойство, установленное в false, в коде Designer.vb для формы.

У меня раньше была эта проблема, и я не уверен, как ее исправить.

Любой совет будет принят с благодарностью.

Спасибо.

Ответы [ 3 ]

1 голос
/ 01 апреля 2015

Я знаю, что это старый вопрос, но, возможно, он поможет кому-то, кто ищет ту же проблему:

Я столкнулся с этой проблемой сегодня.Важно установить свойство AutoGenerateColumns перед тем, как задавать DataSource, иначе столбцы будут сгенерированы до того, как вы скажете DataGridView не делать этого:

DataGridView1.AutoGenerateColumns = False
DataGridView1.DataSource = mySource
1 голос
/ 08 сентября 2010

Я снова добавил элемент управления, и, похоже, он работает на данный момент. Я считаю, что что-то испортилось, вызвав проблему. Как я уже упоминал в вопросе, у меня было это раньше. Если у кого-то еще есть проблемы, подобные этой, было бы здорово, если бы вы могли предоставить некоторые детали.

0 голосов
/ 24 марта 2016

Я обнаружил, что если вы пытаетесь настроить столбцы во время загрузки формы, то у вас возникают странные проблемы, подобные этой. Вместо этого, непосредственно перед заполнением сетки, я проверяю, определены ли столбцы, а если нет, то я продолжаю и настраиваю столбцы в этой точке. Это работает последовательно для меня - при заполнении столбцов я устанавливаю свойство для автоматического добавления столбцов = false первым делом:

    Private Sub Populate_dgvQuoteSelection(status_id As Int32)
    dgvQuoteSelection.DataBindings.Clear()
    If dgvQuoteSelection.Columns.Count = 0 Then
        Setup_dgvQuoteSelection()
    End If
    Try
        dgvQuoteSelection.DataSource = DataService.Quote_HeaderDataService.Quote_GetListView_byStatus(status_id)
    Catch ex As Exception
        MessageBox.Show(String.Format("An error occured while trying to get the grid data: {0}", ex.Message), "Error populating grid", MessageBoxButtons.OK, MessageBoxIcon.Error)
    End Try
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...