Thanks,
Chris
I am trying to export a RadGrid to Excel. However, I am not able to set the VerticalAligment to Top. One of the columns in the my radgrid has a long text (more than 100 chars with a few line breaks). I'd tried to set the VerticalAlign to Top as shown in the code below, but the Excel Report always have VerticalAlign set to Bottom. Please advice! Thanks!
protected
void RadGrid_ExcelMLExportRowCreated(object source, Telerik.Web.UI.GridExcelBuilder.GridExportExcelMLRowCreatedArgs e)
{
if (e.RowType == Telerik.Web.UI.GridExcelBuilder.GridExportExcelMLRowType.DataRow)
{
if (e.Row.Cells[0] != null && ((string)e.Row.Cells[0].Data.DataItem).Contains("U"))
{
e.Row.Cells[0].StyleValue =
"MyCustomStyle";
}
}
}
protected void RadGrid_ExcelMLExportStylesCreated(object source, Telerik.Web.UI.GridExcelBuilder.GridExportExcelMLStyleCreatedArgs e)
{
foreach (Telerik.Web.UI.GridExcelBuilder.StyleElement style in e.Styles)
{
if (style.Id == "headerStyle")
{
style.FontStyle.Bold =
true;
style.FontStyle.Color = System.Drawing.
Color.Gainsboro;
style.InteriorStyle.Color = System.Drawing.
Color.Wheat;
style.InteriorStyle.Pattern = Telerik.Web.UI.GridExcelBuilder.
InteriorPatternType.Solid;
style.AlignmentElement.HorizontalAlignment = Telerik.Web.UI.GridExcelBuilder.
HorizontalAlignmentType.Left;
style.AlignmentElement.VerticalAlignment = Telerik.Web.UI.GridExcelBuilder.
VerticalAlignmentType.Top;
}
else if (style.Id == "itemStyle")
{
style.InteriorStyle.Color = System.Drawing.
Color.WhiteSmoke;
style.InteriorStyle.Pattern = Telerik.Web.UI.GridExcelBuilder.
InteriorPatternType.Solid;
style.AlignmentElement.HorizontalAlignment = Telerik.Web.UI.GridExcelBuilder.
HorizontalAlignmentType.Left;
style.AlignmentElement.VerticalAlignment = Telerik.Web.UI.GridExcelBuilder.
VerticalAlignmentType.Top;
}
else if (style.Id == "alternatingItemStyle")
{
style.InteriorStyle.Color = System.Drawing.
Color.LightGray;
style.InteriorStyle.Pattern = Telerik.Web.UI.GridExcelBuilder.
InteriorPatternType.Solid;
style.AlignmentElement.HorizontalAlignment = Telerik.Web.UI.GridExcelBuilder.
HorizontalAlignmentType.Left;
style.AlignmentElement.VerticalAlignment = Telerik.Web.UI.GridExcelBuilder.
VerticalAlignmentType.Top;
}
}
//Telerik.Web.UI.GridExcelBuilder.AlignmentStyleElement alignStyle = new Telerik.Web.UI.GridExcelBuilder.AlignmentStyleElement();
//alignStyle.VerticalAlignment = Telerik.Web.UI.GridExcelBuilder.VerticalAlignmentType.Top;
//e.Styles.Add(alignStyle); // I'd tried this, but it does not work.
Telerik.Web.UI.GridExcelBuilder.
StyleElement myStyle = new Telerik.Web.UI.GridExcelBuilder.StyleElement("MyCustomStyle");
myStyle.FontStyle.Bold =
true;
myStyle.FontStyle.Italic =
true;
myStyle.InteriorStyle.Color = System.Drawing.
Color.Gray;
myStyle.InteriorStyle.Pattern = Telerik.Web.UI.GridExcelBuilder.
InteriorPatternType.Solid;
e.Styles.Add(myStyle);
}