Как я могу изменить порядок столбцов в DataGridView? - PullRequest
16 голосов
/ 18 мая 2010

, поэтому я заполняю свой DGV некоторыми данными и устанавливаю некоторые столбцы невидимыми:

        var part = inventory.espiromex_product.Where(p => p.descriptionsmall == cmbMainP.Text).First().partnumberp;
        dtgAssy.DataSource = inventory.espiromex_productsub.Where(p => p.partnumberp == part);
        dtgAssy.Columns["idproductsub"].Visible = false;
        dtgAssy.Columns["partnumberp"].Visible = false;
        dtgAssy.Columns["partnumbersubp"].Visible = true;
        dtgAssy.Columns["quantity"].Visible = true;
        dtgAssy.Columns["comments"].Visible = true;
        dtgAssy.Columns["assemblyno"].Visible = false;
        dtgAssy.Columns["assemblynodesc"].Visible = false;
        dtgAssy.Columns["uomid"].Visible = true;
        dtgAssy.Columns["subassemblylevelnumber"].Visible = false;
        dtgAssy.Columns["scrappercent"].Visible = true;

это нормально, но столбцы отсортированы в алфавитном порядке. Как программно изменить порядок столбцов?

обратите внимание, что инвентарь является Entitie, и я использую Linq to Entities.

Ответы [ 2 ]

26 голосов
/ 18 мая 2010

Можно установить свойство DisplayIndex для отдельных столбцов.

5 голосов
/ 18 мая 2010

Еще одно предложение: не позволяйте datagridview принимать решения за вас. Вместо того, чтобы позволить dgv автоматически генерировать столбцы для вас во время привязки, напишите код для создания столбцов в нужном вам порядке и с необходимыми атрибутами, а затем привязайте источник данных. Полагаясь на работу dgv, вы можете получить непредсказуемые результаты, когда выйдут новые версии, или вы сделаете небольшие изменения в своем источнике данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...