Внешние ключи-столбцы отсутствуют в представлении данных - PullRequest
0 голосов
/ 12 октября 2018

Я хочу получить все данные в datagridview.

dataGridView1.DataSource = dataTable1;

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

Существует ли простой способ создания действительно ВСЕХ столбцов в сетке данных?

1 Ответ

0 голосов
/ 19 октября 2018

Я нашел решение, которое работает для меня ...

Ответственным за поведение является свойство column-mapping для столбца.Переключение с MappingType.Hidden на MappintType.Element не позволяет внутреннему алгоритму генерации столбца отфильтровать столбец.

List<DataColumn> ldc_recover = new List<DataColumn>(); 

foreach (DataColumn dataColumn in dataTable1.Columns)
{
    if (dataColumn.ColumnMapping == MappingType.Hidden)
    {
        dataColumn.ColumnMapping = MappingType.Element;
        ldc_recover.Add(dataColumn);
    }
}

// Fill the datagridview with data from datatable
dataGridView1.DataSource = dataTable1;

// Restore the previous columnmapping-property
foreach (DataColumn dc_enum in ldc_recover)
{
    dc_enum.ColumnMapping = MappingType.Hidden;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...