I am having Infragistics Version 11.2
I am using GroupField to add columns to it.
WebDataGrid ignroing GroupField and even when addding BoundDataField to grid.
Please let me know the changes required for MultiColumn Header
Hello Kumar,
If you need to create multiple levels of headers or group them into categories, enabling multi-column headers provides this functionality.
The GroupField object is a field that accepts other columns in its columns collection. The header of the GroupField then displays above the columns in its columns collection
We do have a API document with sample applications to show how to setup multi-column headers in the WebDataGrid.
http://www.infragistics.com/help/aspnet/webdatagird-multi-column-headers
Please go through the document and let me know if you need further assistance.
Hi Divya Jain,
I followed the sample "MultiColumnHeader".But still i am not able to see the grid data.
I have set AutoGenerateColumns="false".
Below it the snippet:
<div style="padding-top: 5px;" id="divPCIDATA" runat="server" visible="false"> <ig:WebDataGrid ID="wdg" runat="server" AutoGenerateColumns="false" Width="100%" DefaultColumnWidth="150px" EnableRelativeLayout="True" EnableAjax="False" > </ig:WebDataGrid>
wdg.ClearDataSource(); wdg.DataSource = BuildData(dt); wdg.DataMember = dt.TableName; wdg.DataBind();
private List<PCIData> BuildData(DataTable dt) { List<PCIData> data = new List<PCIData>(); PCIData pciData = new PCIData(); foreach (DataRow row in dt.Rows) { pciData.ProjectName = row.Field<string>("PROJECTNAME");
string plannedStartDate = string.Empty; string plannedEnddate = string.Empty;
if (row["PLANSTARTDATE"] == System.DBNull.Value) { plannedStartDate = ""; } else { plannedStartDate = Convert.ToDateTime(row["PLANSTARTDATE"]).ToString("dd-MMM-yyyy"); }
if (row["PLANENDDATE"] == System.DBNull.Value) { plannedEnddate = ""; } else { plannedEnddate = Convert.ToDateTime(row["PLANENDDATE"]).ToString("dd-MMM-yyyy"); }
pciData.StartDate = plannedStartDate; pciData.EndDate = plannedEnddate;
if (row.Field<string>("MONTH") == "January") { pciData.janMonth = "January"; pciData.janInitial = Convert.ToString(row["PCIINITIAL"]); pciData.janFinal = Convert.ToString(row["PCIFINAL"]); pciData.janHQFinal = Convert.ToString(row["HQFINAL"]);
} else if (row.Field<string>("MONTH") == "February") { pciData.febMonth = "February"; pciData.febInitial = Convert.ToString(row["PCIINITIAL"]); pciData.febFinal = Convert.ToString(row["PCIFINAL"]); pciData.febHQFinal = Convert.ToString(row["HQFINAL"]);
} else if (row.Field<string>("MONTH") == "March") { pciData.marMonth = "March"; pciData.marInitial = Convert.ToString(row["PCIINITIAL"]); pciData.marFinal = Convert.ToString(row["PCIFINAL"]); pciData.marHQFinal = Convert.ToString(row["HQFINAL"]);
} else if (row.Field<string>("MONTH") == "April") { pciData.aprMonth = "April"; pciData.aprInitial = Convert.ToString(row["PCIINITIAL"]); pciData.aprFinal = Convert.ToString(row["PCIFINAL"]); pciData.aprHQFinal = Convert.ToString(row["HQFINAL"]);
} else if (row.Field<string>("MONTH") == "May") { pciData.mayMonth = "May"; pciData.mayInitial = Convert.ToString(row["PCIINITIAL"]); pciData.mayFinal = Convert.ToString(row["PCIFINAL"]); pciData.mayHQFinal = Convert.ToString(row["HQFINAL"]);
} else if (row.Field<string>("MONTH") == "June") { pciData.juneMonth = "June"; pciData.juneInitial = Convert.ToString(row["PCIINITIAL"]); pciData.juneFinal = Convert.ToString(row["PCIFINAL"]); pciData.juneHQFinal = Convert.ToString(row["HQFINAL"]);
} else if (row.Field<string>("MONTH") == "July") { pciData.julyMonth = "July"; pciData.julyInitial = Convert.ToString(row["PCIINITIAL"]); pciData.julyFinal = Convert.ToString(row["PCIFINAL"]); pciData.julyHQFinal = Convert.ToString(row["HQFINAL"]);
}
else if (row.Field<string>("MONTH") == "August") { pciData.augMonth = "August"; pciData.augInitial = Convert.ToString(row["PCIINITIAL"]); pciData.augFinal = Convert.ToString(row["PCIFINAL"]); pciData.augHQFinal = Convert.ToString(row["HQFINAL"]);
} else if (row.Field<string>("MONTH") == "September") { pciData.sepMonth = "September"; pciData.sepInitial = Convert.ToString(row["PCIINITIAL"]); pciData.sepFinal = Convert.ToString(row["PCIFINAL"]); pciData.sepHQFinal = Convert.ToString(row["HQFINAL"]);
} else if (row.Field<string>("MONTH") == "October") { pciData.octMonth = "October"; pciData.octInitial = Convert.ToString(row["PCIINITIAL"]); pciData.octFinal = Convert.ToString(row["PCIFINAL"]); pciData.octHQFinal = Convert.ToString(row["HQFINAL"]);
} else if (row.Field<string>("MONTH") == "November") { pciData.novMonth = "November"; pciData.novInitial = Convert.ToString(row["PCIINITIAL"]); pciData.novFinal = Convert.ToString(row["PCIFINAL"]); pciData.novHQFinal = Convert.ToString(row["HQFINAL"]);
} else if (row.Field<string>("MONTH") == "December") { pciData.decMonth = "December"; pciData.decInitial = Convert.ToString(row["PCIINITIAL"]); pciData.decFinal = Convert.ToString(row["PCIFINAL"]); pciData.decHQFinal = Convert.ToString(row["HQFINAL"]);
} data.Add(pciData); return data; }
Thank you for providing your code snippet
When I am looking into the code I did not find any functionality related to multi-column headers, also I would like to know where did you define your BoundDataField and GroupFields in the grid?
The best way for us to assist you is if you provide a small isolated sample that we can run and use for debugging locally.
Looking forward to hear you back.