[英]How can I reorder columns in a DataGridView?
所以我用我的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。
您可以設置各列的DisplayIndex屬性 。
另一個建議:不要讓datagridview為你做決定。 不要讓dgv在綁定時自動為您生成列,而是編寫代碼以按照您想要的順序和所需的屬性創建列,然后綁定數據源。 依賴於dgv來完成工作可能會在新版本出現或您對數據源進行細微更改時產生不可預測的結果。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.