Я работаю над Radgrid в asp.net.При выполнении на ExportToPDF мне нужно получить каждую запись на отдельной странице.В настоящее время я получаю все записи без какого-либо уровня страницы для каждой записи. Но как мы можем установить каждую запись на уровне страницы?
Пример: если есть 100 записей, я должен получить 100 страницв экспортированном файле PDF, где каждая запись на одной странице.
Код Aspx:
<telerik:RadGrid ID="dlTemplate" runat="server" AutoGenerateColumns="false"
AllowPaging="true">
<GroupingSettings CaseSensitive="false" />
<PagerStyle AlwaysVisible="true" Mode="NextPrevAndNumeric" />
<ExportSettings ExportOnlyData="true" OpenInNewWindow="true"
IgnorePaging="true" FileName="Template">
<Pdf PageTitle="Letter Template" PaperSize="A4" />
<Pdf PageWidth="270mm" PageHeight="297mm" />
</ExportSettings>
<MasterTableView DataKeyNames="Message" TableLayout="Auto" HeaderStyle-
CssClass="title-b14px" ItemStyle-CssClass="txtlable-b13px-normal">
<Columns>
<telerik:GridBoundColumn UniqueName="Message" DataField="Message"
HeaderText="Message">
</telerik:GridBoundColumn>
</Columns>
</MasterTableView>
</telerik:RadGrid>
Код Aspx.cs:
protected void print_page(object sender, EventArgs e)
{
try
{
DataTable dt1 = new DataTable();
dt1.Columns.Add("Message", typeof(string));
DataRow dr = dt1.NewRow();
dt1.Rows.Add(dr);
//dt1.Rows[0][0] = lblLable.Text;
string msg = string.Empty;
foreach (GridDataItem row in dlTemplate.Items)
{
for (int i = 0; i < dlTemplate.Columns.Count; i++)
{
var message = row["Message"].Text;
message = Regex.Replace(message, "(<style.+?</style>)|
(<script.+?</script>)", "", RegexOptions.IgnoreCase |
RegexOptions.Singleline);
msg += message + "<br/><hr/>";
}
}
dt1.Rows[0][0] = msg.Remove(msg.Length - 5);
dlTemplate.DataSource = dt1;
dlTemplate.DataBind();
dlTemplate.MasterTableView.ExportToPdf();
}
catch (Exception ex)
{
BLGeneral.LogException(ex);
}
}