Я пишу aspx для принтера DGV, чтобы распечатать документ PDF. У меня есть gridview
но принтер DGV говорит, что сетка не найдена.
System.Exception: 'Null Parameter passed to DGVPrinter.'
Когда я написал printer.PrintPreviewNoDisplay(**GridView1**);
, мое имя сетки GridView1 не работает.
default.aspx.cs часть здесь
using System;
using System.Drawing;
using System.Windows.Forms;
using DGVPrinterHelper;
namespace WebApplication61
{
public partial class WebForm1 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{ }
protected void Button1_Click(object sender, EventArgs e)
{
DGVPrinter printer = new DGVPrinter();
printer.Title = "DataGridView Report";
printer.SubTitle = "An Easy to Use DataGridView Printing Object";
printer.SubTitleFormatFlags = StringFormatFlags.LineLimit |
StringFormatFlags.NoClip;
printer.PrintSettings.DefaultPageSettings.Landscape = true;
printer.PageNumbers = true;
printer.PageNumberInHeader = false;
printer.PorportionalColumns = true;
printer.HeaderCellAlignment = StringAlignment.Near;
printer.Footer = "Your Company Name Here";
printer.FooterSpacing = 15;
printer.PrintPreviewNoDisplay(GridView1);
}
}
}
here default.aspx
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="WebApplication61.WebForm1" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<style type="text/css">
.auto-style1 {
height: 535px;
}
</style>
</head>
<body>
<form id="form1" runat="server">
<div class="auto-style1">
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="altsurecid" DataSourceID="SqlDataSource1">
<Columns>
<asp:BoundField DataField="xas" HeaderText="axs" InsertVisible="True" ReadOnly="True" SortExpression="xas" />
...
</asp:GridView>
<asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" />
</div>
</form>
</body>
</html>
visual studio 2017 Я использую SQL managemant, win 10