PdfIntegrationProviderOnDocumentPrinting Method |
Namespace: RadPdf.Integration
Inheriting classes can override this method to perform other tasks, modify aspects of printing the document, or cancel the download all together. If this method is overridden in an inheriting class, you must call the base implementation.
using System; using System.Web; using RadPdf.Data.Document.Objects.FormFields; using RadPdf.Integration; public class CustomPdfIntegrationProvider : PdfIntegrationProvider { public override void OnDocumentPrinting(DocumentPrintingEventArgs e) { base.OnDocumentPrinting(e); //Look for form field with the name "test" and see if it is null or has no value if( string.IsNullOrEmpty(((PdfTextField.)e.Document.Fields.Find("test")).Value) ) { //Cancel print e.Cancel = true; e.CancelMessage = "The form field \"test\" is not completed."; } } }
<?xml version="1.0"?> <configuration> <appSettings> <add key="RadPdfConnectionString" value="Server=.\SQLExpress;Database=RadPdf;Trusted_Connection=Yes;"/> <add key="RadPdfLicenseKey" value="DEMO"/> <add key="RadPdfIntegrationProvider" value="CustomPdfIntegrationProvider,App_Code"/> </appSettings> <system.web> <httpHandlers> <add path="RadPdf.axd" verb="GET,POST" type="RadPdf.Web.HttpHandler.PdfHttpHandler"/> </httpHandlers> </system.web> <!-- The system.webServer element is for use with IIS 7 (and later) when Managed Pipeline Mode is set to "Integrated". It will be ignored in other versions of IIS. --> <system.webServer> <validation validateIntegratedModeConfiguration="false"/> <handlers> <add path="RadPdf.axd" verb="GET,POST" name="PdfHttpHandler" preCondition="integratedMode" type="RadPdf.Web.HttpHandler.PdfHttpHandler"/> </handlers> </system.webServer> </configuration>