Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
DataGridView Reorder Columns
Message
General information
Forum:
ASP.NET
Category:
Coding, syntax and commands
Title:
DataGridView Reorder Columns
Miscellaneous
Thread ID:
01398182
Message ID:
01398182
Views:
88
I'm trying to reorder the columns in a DataGridView. I have:
grdReceive.Columns["PartId"].DisplayIndex = 0;
grdReceive.Columns["SerialNo"].DisplayIndex = 1;
grdReceive.Columns["Location"].DisplayIndex = 2;
grdReceive.Columns["LocationInfo"].DisplayIndex = 3;
grdReceive.Columns["Description"].DisplayIndex = 8;
The columns actually appear as:

PartNo, SerialNo, Location, Description, LocationInfo.

I cannot get Description to move over one position to the right. Location is a combo column I added in code.

Here's the full code:
grdReceive.DataMember = dsInventory.Tables[0].TableName;
grdReceive.DataSource = dsInventory;

DataGridViewComboBoxColumn comboboxColumn = new DataGridViewComboBoxColumn();
foreach (DataRow oRow in dsLocations.Tables[0].Rows)
{ 
    comboboxColumn.Items.Add(oRow["Location"].ToString());
}
comboboxColumn.HeaderText = "Location";
comboboxColumn.Name = "Location";
grdReceive.Columns.Add(comboboxColumn);


grdReceive.Columns["HistoryId"].Visible = false;
grdReceive.Columns["UserId"].Visible = false;
grdReceive.Columns["PartId"].Visible = false;
grdReceive.Columns["LocationId"].Visible = false;
grdReceive.Columns["WarehouseId"].Visible = false;
grdReceive.Columns["WarehouseCode"].Visible = false;
grdReceive.Columns["Sequence"].Visible = false;
grdReceive.Columns["Quantity"].Visible = false;

grdReceive.Columns["LocationInfo"].HeaderText = "Info";
grdReceive.Columns["PartNo"].HeaderText = "Part No";
grdReceive.Columns["SerialNo"].HeaderText = "Serial No";
grdReceive.Columns["FullName"].HeaderText = "User";
grdReceive.Columns["DropShip"].HeaderText = "Drop";
grdReceive.Columns["ActionDate"].HeaderText = "Date";
grdReceive.Columns["ActionDate"].DefaultCellStyle.Format = "d";

grdReceive.Columns["ActionDate"].Width = 60;
grdReceive.Columns["DropShip"].Width = 35;
grdReceive.Columns["Description"].Width = 160;
grdReceive.Columns["Printed"].Width = 44;

grdReceive.Columns["PartNo"].ReadOnly = true;
grdReceive.Columns["Description"].ReadOnly = true;
grdReceive.Columns["SerialNo"].ReadOnly = true;
grdReceive.Columns["Quantity"].ReadOnly = true;
grdReceive.Columns["DropShip"].ReadOnly = true;
grdReceive.Columns["Printed"].ReadOnly = true;
grdReceive.Columns["ActionDate"].ReadOnly = true;
grdReceive.Columns["FullName"].ReadOnly = true;

grdReceive.Columns["PartNo"].DisplayIndex = 0;
grdReceive.Columns["SerialNo"].DisplayIndex = 1;
grdReceive.Columns["Location"].DisplayIndex = 2;
grdReceive.Columns["LocationInfo"].DisplayIndex = 3;
grdReceive.Columns["Description"].DisplayIndex = 8;
grdReceive.Columns["Comments"].DisplayIndex = 9;
Everything makes sense in someone's mind
public class SystemCrasher :ICrashable
In addition, an integer field is not for irrational people
Next
Reply
Map
View

Click here to load this message in the networking platform