We are binding Generic List of entities (e.g. List<Employee>) with RadGrid (Teleric.Web.UI.dll v2009.2.826.35). We are using GridBoundColumn. Grid gets diplsayed properly. Also it gets exported very well in .pdf and .csv formats. But when we try to export in Excel using ExcelML format, it generates blank excel file. Here is sample code:
protected void Page_Load(object sender, EventArgs e)
{
}
protected void uxRadListView_NeedDataSource(object source, GridNeedDataSourceEventArgs e)
{
SetGridDataSource();
}
public void SetGridDataSource()
{
uxRadListView.DataSource = GetList();
}
private List<Employee> GetList()
{
List<Employee> employees = new List<Employee>();
for (int i = 0; i < 10; i++)
{
Employee emp = new Employee();
emp.EmpId = 100;
emp.FName = "John";
employees.Add(emp);
}
}
protected void uxBtnExport_Click(object sender, EventArgs e)
{
uxRadListView.ExportSettings.IgnorePaging = true;
uxRadListView.ExportSettings.OpenInNewWindow = true;
uxRadListView.ExportSettings.FileName = "EXCEL";
uxRadListView.ExportSettings.Excel.Format = GridExcelExportFormat.ExcelML;
uxRadListView.ExportSettings.ExportOnlyData = false;
uxRadListView.MasterTableView.ExportToExcel();
}
RadAjaxManager
section<
telerik:RadAjaxManager
ID
=
"RadAjaxManager1"
runat
=
"server"
>
<
AjaxSettings
>
<
telerik:AjaxSetting
AjaxControlID
=
"btnRefreshTree"
>
<
UpdatedControls
>
<
telerik:AjaxUpdatedControl
ControlID
=
"RadTreeView1"
/>
</
UpdatedControls
>
</
telerik:AjaxSetting
>
<
telerik:AjaxSetting
AjaxControlID
=
"RadTreeView1"
>
<
UpdatedControls
>
<
telerik:AjaxUpdatedControl
ControlID
=
"RadSlider1"
/>
<
telerik:AjaxUpdatedControl
ControlID
=
"DescriptionText"
/>
<
telerik:AjaxUpdatedControl
ControlID
=
"lblTotalAssets"
/>
<
telerik:AjaxUpdatedControl
ControlID
=
"RadListView1"
LoadingPanelID
=
"RadAjaxLoadingPanel1"
/>
<
telerik:AjaxUpdatedControl
ControlID
=
"RadDataPager1"
/>
</
UpdatedControls
>
</
telerik:AjaxSetting
>
<
telerik:AjaxSetting
AjaxControlID
=
"btnSelectAll"
>
<
UpdatedControls
>
<
telerik:AjaxUpdatedControl
ControlID
=
"RadListView1"
LoadingPanelID
=
"RadAjaxLoadingPanel1"
/>
</
UpdatedControls
>
</
telerik:AjaxSetting
>
<
telerik:AjaxSetting
AjaxControlID
=
"btnUnSelectAll"
>
<
UpdatedControls
>
<
telerik:AjaxUpdatedControl
ControlID
=
"RadListView1"
LoadingPanelID
=
"RadAjaxLoadingPanel1"
/>
</
UpdatedControls
>
</
telerik:AjaxSetting
>
<
telerik:AjaxSetting
AjaxControlID
=
"btnRefresh"
>
<
UpdatedControls
>
<
telerik:AjaxUpdatedControl
ControlID
=
"RadSlider1"
/>
<
telerik:AjaxUpdatedControl
ControlID
=
"lblTotalAssets"
/>
<
telerik:AjaxUpdatedControl
ControlID
=
"RadListView1"
/>
</
UpdatedControls
>
</
telerik:AjaxSetting
>
<
telerik:AjaxSetting
AjaxControlID
=
"RadListView1"
>
<
UpdatedControls
>
<
telerik:AjaxUpdatedControl
ControlID
=
"RadTreeView1"
/>
<
telerik:AjaxUpdatedControl
ControlID
=
"RadSlider1"
/>
<
telerik:AjaxUpdatedControl
ControlID
=
"DescriptionText"
/>
<
telerik:AjaxUpdatedControl
ControlID
=
"lblTotalAssets"
/>
</
UpdatedControls
>
</
telerik:AjaxSetting
>
<
telerik:AjaxSetting
AjaxControlID
=
"RadDataPager1"
>
<
UpdatedControls
>
<
telerik:AjaxUpdatedControl
ControlID
=
"RadSlider1"
/>
<
telerik:AjaxUpdatedControl
ControlID
=
"RadListView1"
LoadingPanelID
=
"RadAjaxLoadingPanel1"
/>
</
UpdatedControls
>
</
telerik:AjaxSetting
>
</
AjaxSettings
>
</
telerik:RadAjaxManager
>
<
telerik:RadListView
ID
=
"RadListView1"
runat
=
"server"
AllowPaging
=
"True"
ItemPlaceholderID
=
"PlaceHolder1"
OnItemCreated
=
"RadListView1_ItemCreated"
OnPreRender
=
"RadListView1_PreRender"
DataKeyNames
=
"id"
>
<
LayoutTemplate
>
<
div
class
=
"RadListView RadListViewFloated RadListView_Windows7"
>
<
telerik:RadDataPager
ID
=
"RadDataPager1"
runat
=
"server"
Skin
=
"Sitefinity"
PageSize
=
"25"
PagedControlID
=
"RadListView1"
BorderWidth
=
"0"
>
<
Fields
>
<
telerik:RadDataPagerButtonField
FieldType
=
"FirstPrev"
/>
<
telerik:RadDataPagerButtonField
FieldType
=
"Numeric"
/>
<
telerik:RadDataPagerButtonField
FieldType
=
"NextLast"
/>
<
telerik:RadDataPagerPageSizeField
PageSizeText
=
"Page size: "
/>
<
telerik:RadDataPagerGoToPageField
CurrentPageText
=
"Page: "
TotalPageText
=
"of"
SubmitButtonText
=
"Go"
TextBoxWidth
=
"15"
/>
<
telerik:RadDataPagerTemplatePageField
>
<
PagerTemplate
>
<
div
style
=
"float: right"
>
<
b
>Items
<
asp:Label
runat
=
"server"
ID
=
"CurrentPageLabel"
Text="<%# Container.Owner.StartRowIndex + 1%>" />
to
<
asp:Label
runat
=
"server"
ID
=
"TotalPagesLabel"
Text="<%# Container.Owner.StartRowIndex+Container.Owner.PageSize %>" />
of
<
asp:Label
runat
=
"server"
ID
=
"TotalItemsLabel"
Text="<%# Container.Owner.TotalRowCount%>" />
<
br
/>
</
b
>
</
div
>
</
PagerTemplate
>
</
telerik:RadDataPagerTemplatePageField
>
</
Fields
>
</
telerik:RadDataPager
>
<
div
id
=
"PlaceHolder1"
runat
=
"server"
/>
</
div
>
</
LayoutTemplate
>
<
ItemTemplate
>
<
div
style
=
"float: left;"
>
<
fieldset
style
=
"border: 0; width: 154px; height: 154px; margin: 5px 5px 5px 5px;"
>
<
div
class
=
"myClass"
style
=
"padding: 2px 2px 2px 2px; background: #eeeeee; text-align: center;"
>
<
a
href
=
"javascript:Popup_Window('asset_preview','<%# Eval("
id") %>')">
<
telerik:RadBinaryImage
ID
=
"RadBinaryImage1"
runat
=
"server"
AutoAdjustImageControlSize
=
"False"
CssClass
=
"myClass"
ImageUrl='<%# Eval("thumbUrl") %>' ResizeMode="Fit" AlternateText="Click to view preview"
ToolTip="Click to view preview" Width="150px" Height="150px" />
</
a
>
</
div
>
</
fieldset
>
<
div
style="border: 0px; white-space: normal; width: 150px; margin: 5px 5px 5px 5px;
padding: 2px 2px 2px 2px;">
<
asp:CheckBox
ID
=
"chkImage"
runat
=
"server"
AutoPostBack
=
"True"
/>
<
a
href
=
"javascript:Popup_Window('asset_detail','<%# Eval("
id") %>')">
<%# Eval("title") %>
-
<%# Eval("filenameextension") %></
a
>
<%--<
asp:HyperLink
ID
=
"lnkAsset"
Target
=
"_new"
NavigateUrl
=
"assetinfo.aspx"
runat
=
"server"
><%# Eval("filename") %></
asp:HyperLink
>--%>
<
asp:HiddenField
ID
=
"hiddenAssetId"
Value='<%# Eval("id") %>' runat="server" />
</
div
>
</
div
>
</
ItemTemplate
>
<
EmptyDataTemplate
>
No Assets Found
</
EmptyDataTemplate
>
</
telerik:RadListView
>
public
void
RadComboBox4_SelectedIndexChanged(
object
sender, RadComboBoxSelectedIndexChangedEventArgs e)
{
ScriptManager.RegisterStartupScript(
this
,
this
.GetType(),
"fireClientEvent"
,
"changeButtonState()"
,
true
);
}
function
changeButtonState()
{
//alert('test popup');
var
button = $find(
"<%= btnSelectDeal.ClientID %>"
);
alert(button.get_text());
}
<
telerik:RadButton
runat
=
"server"
Text
=
"Select"
ID
=
"btnSelectDeal"
UseSubmitBehavior
=
"False"
Skin
=
"Telerik"
OnClick
=
"btnSelectDeal_Click"
onclientclicked
=
"OnClientClicked"
>
</
telerik:RadButton
>