
While using a Grid with Grouped columns, we have found that when we scroll to the right, little space is left for the left most column and in that case, only the first column in the leftmost groups is shown.
Please see the attached image.
Notice that the width of the grouped column crops the column as indicated in the image. Please assist.
Is there a way to show avoid cropping of the right sub-column in the group.
10 Answers, 1 is accepted
Could you paste the aspx mark-up for the grid? I could not see any grouping on the picture, could you also give more details on that?
Thanks.
Regards,
Tsvetoslav
the Telerik team
Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items.

I am also creating a dynamic Rad Grid, I create two initial columns that are frozen, then based on the user accessing the page, I create additional Column Groupings for each U.S. state they need to see, under each state there three sub-columns.
Since we can have up to 50 states, I need to turn on an "excel" like feature of freeze panes, with the first two columns frozen and static headers.
I have attached three screenshots the initial load, scrolling to the right (which is when the UI starts to look a little different), then back to the left.
Here is a Code block of my dynamic rad grid
var rg =
new
RadGrid();
rg.Skin =
"Default"
;
rg.NeedDataSource += rg_NeedDataSource;
rg.ID =
"rgStateComp"
;
rg.Width = Unit.Pixel(1280);
rg.ClientSettings.Scrolling.AllowScroll =
true
;
rg.ClientSettings.Scrolling.UseStaticHeaders =
true
;
rg.ClientSettings.Scrolling.FrozenColumnsCount = 2;
rg.AllowPaging =
false
;
rg.AutoGenerateColumns =
false
;
rg.MasterTableView.DataKeyNames =
new
string
[] {
"InvestorID"
};
// Get the State Filings
var stateFilings = from s
in
StateAndStateFiling.GetStateFilingsForEngagementEntity(
this
.EngagementEntityID)
where s.Filing.Active
where s.Filing.Composite
select
new
{
s.State.StateID,
s.State.Name
};
GridBoundColumn boundColumn;
boundColumn =
new
GridBoundColumn();
boundColumn.HeaderStyle.HorizontalAlign = HorizontalAlign.Center;
boundColumn.DataField =
"GoSystemsID"
;
rg.MasterTableView.Columns.Add(boundColumn);
boundColumn =
new
GridBoundColumn();
boundColumn.HeaderStyle.HorizontalAlign = HorizontalAlign.Center;
boundColumn.DataField =
"Name"
;
boundColumn.HeaderText =
"Name"
;
rg.MasterTableView.Columns.Add(boundColumn);
foreach
(var state
in
stateFilings)
{
var group =
new
GridColumnGroup();
group.Name = state.StateID.ToString();
group.HeaderStyle.HorizontalAlign = HorizontalAlign.Center;
group.HeaderText = state.Name;
rg.MasterTableView.ColumnGroups.Add(group);
// Create the Three Template Columns for the States and to the DataTable
// Add NA to the DataTable
this
.StateTable.Columns.Add(
string
.Format(
"NA{0}"
, state.StateID),
typeof
(
bool
));
// Elected
var elected =
new
GridTemplateColumn();
var electedName =
string
.Format(
"Elected{0}"
, state.StateID);
this
.StateTable.Columns.Add(electedName);
elected.ItemTemplate =
new
IndicatorTemplate(state.StateID,
"Elected"
);
elected.HeaderStyle.HorizontalAlign = HorizontalAlign.Center;
elected.HeaderText =
"Elected"
;
elected.UniqueName = elected.DataField = electedName;
elected.ColumnGroupName = group.Name;
rg.MasterTableView.Columns.Add(elected);
// Eligibility
var eligible =
new
GridTemplateColumn();
var eligibleName =
string
.Format(
"Eligible{0}"
, state.StateID);
this
.StateTable.Columns.Add(eligibleName);
eligible.ItemTemplate =
new
IndicatorTemplate(state.StateID,
"Eligible"
);
eligible.HeaderStyle.HorizontalAlign = HorizontalAlign.Center;
eligible.HeaderText =
"Eligible"
;
eligible.UniqueName = eligible.DataField = eligibleName;
eligible.ColumnGroupName = group.Name;
rg.MasterTableView.Columns.Add(eligible);
// Final
var final =
new
GridTemplateColumn();
var finalName =
string
.Format(
"Final{0}"
, state.StateID);
this
.StateTable.Columns.Add(finalName,
typeof
(
bool
));
final.ItemTemplate =
new
CheckboxTemplate(state.StateID);
final.HeaderStyle.HorizontalAlign = HorizontalAlign.Center;
final.HeaderText =
"Final"
;
final.UniqueName = final.DataField = finalName;
final.ColumnGroupName = group.Name;
rg.MasterTableView.Columns.Add(final);
}
// Add the Rad Grid to the Placeholder
this
.phStateCompGrid.Controls.Add(rg);
Unfortunately, Frozen columns and multi-column grouped headers is a an unsupported scenario in RadGrid.
Regards, Tsvetoslav
the Telerik team

I want to know, if Frozen columns in combination with multi-column grouped headers and filter row are still an unsupported scenario in RadGrid...
Best regards
Vasssek
Unfortunately frozen columns are still not supported with multi-column headers. Please excuse us for the inconvenience caused.
Regards,
Pavlina
Telerik

We are working on improving Frozen columns functionality and the bug with multi-column headers will also be fixed for one of the next versions of Telerik UI controls. You can keep track on our release notes to see when this fix will be released.
http://www.telerik.com/support/whats-new/aspnet-ajax/release-history
Regards,
Pavlina
Telerik
Check out the Telerik Platform - the only platform that combines a rich set of UI tools with powerful cloud services to develop web, hybrid and native mobile apps.

If you are asking for the bug with multi-column headers and frozen columns we planned to fix it for Q2 2015 release.
Regards,
Pavlina
Telerik
Check out the Telerik Platform - the only platform that combines a rich set of UI tools with powerful cloud services to develop web, hybrid and native mobile apps.
Since Q1 2015 SP1 version of Telerik UI controls we provide support for frozen columns and multi-column headers. You can also refer to the release notes linked below to see all new features and bug fixes included in this release:
http://www.telerik.com/support/whats-new/aspnet-ajax/release-history/ui-for-asp-net-ajax-q1-2015-(version-2015-1-401)
Regards,
Pavlina
Telerik
See What's Next in App Development. Register for TelerikNEXT.