syncfusion-winforms-pdf-viewer
SKILL.md
Syncfusion WinForms PdfViewer - UI Sample generator
Generate C# Code for the User's Project (default)
Trigger keywords: "code", "snippet", "how to write", "Program.cs", "show me", "sample", "integrate", "example code", "generate code for", "create sample", "winforms pdfviewer".
Purpose: Generate clean, ready-to-use C# code snippets that directly insert into their WinForms application when working with Syncfusion WinForms PdfViewer control.
Workflow:
- Build the C# code using the snippets provided in the references/*.md files.
- Before generating the sample, ask the user whether the code should be:Integrated into an existing WinForms project, or Created as a new WinForms application.
- If the user chooses to create a new WinForms project, ask them which target framework they want to use: -.NET Framework (e.g., 4.6, 4.7, 4.8) — uses Syncfusion.PdfViewer.WinForms and targets the classic .NET Framework. -.NET / .NET Core (e.g., .NET 8, .NET 10) — uses Syncfusion.PdfViewer.WinForms with net8.0-windows (or the selected version).
- Based on the user's choice: Generate the .csproj file with the correct value. Add the required NuGet packages. Tailor any framework-specific code, such as namespace imports, form initialization, startup code (Program.cs), and PDF Viewer setup, accordingly.
- Add only the APIs required to satisfy the user's requested functionality. Do not include optional APIs, additional.
Code References
All templates and snippets are in the references/ folder. Each file is a focused snippet or template the agent will combine when generating sample:
| File | Contents |
|---|---|
| view-pdfviewer.md | NuGet setup, add PdfViewerControl/PdfDocumentView, load PDF |
| saving-pdf-files.md | Save PDF via toolbar, programmatic save using LoadedDocument.Save(), BeginSave and EndSave events |
| printing-pdf-files.md | Print PDF via toolbar, silent printing using Print(), customize print size (ActualSize, Fit, CustomScale), print orientation (Auto, Portrait, Landscape), hide print status dialog, BeginPrint, PrintProgress, and EndPrint events |
| extract-text.md | Extract text from a single page using ExtractText(pageIndex, out textLines), extract text from entire file using PageCount loop, extract text with line bounds via TextLines/TextLine, extract words with bounds via WordCollection/TextWord |
| pdf-rendering-engines.md | Switch rendering engine using RenderingEngine property (PDFium default, SfPdf alternative), set custom PDFium binary path via ReferencePath for restricted-access environments |
| searching-text.md | Search next/previous text instance using SearchNextText()/SearchPreviousText(), find all instances with bounds using FindText(), count total matches, enable/disable highlight all instances via TextSearchSettings.HighlightAllInstance, customize highlight colors via TextSearchSettings.CurrentInstanceColor/OtherInstanceColor |
| navigation.md | Bookmark navigation, hyperlink handling, and page navigation (programmatic GoToBookmark(), HyperlinkClicked/HyperlinkMouseOver, GoToPageAtIndex()) |
| localization.md | Localize tooltip and context menu static text, default en-US localization keys table, add culture-specific Resx files (e.g., Syncfusion.PdfViewer.Windows.fr.resx), set custom assembly/namespace for localization using LocalizationManager.SetResources() |
| themes.md | Apply built-in themes using ThemeName property (Office2016Colorful, Office2016Black, Office2016DarkGray, Office2016White, Office2019Colorful, HighContrastBlack), load theme assemblies via SkinManager.LoadAssembly(), reset to default theme |
| interaction-modes.md | Switch cursor modes using CursorMode property — PdfViewerCursorMode.SelectTool for text selection (default), PdfViewerCursorMode.HandTool for panning/scrolling |
| error-handling.md | Subscribe to ErrorOccurred event, handle ErrorOccurredEventArgs.Message to log errors or display messages to users |
| magnifying.md | Zoom to a specific percentage using ZoomTo(), get current zoom via ZoomPercentage, switch zoom modes using ZoomMode property (FitPage, FitWidth) |
| view-pdf-stream.md | Load a PDF from a FileStream using the Load(stream) overload |
| document-information.md | Access filename and file path of the loaded PDF via DocumentInformation.FileName and DocumentInformation.FilePath; get page count via PageCount |
| mouse-position.md | Handle PageClicked and PageMouseMove events to get page index and mouse position relative to the PDF page |
| host-wpf-pdfviewer-in-winforms.md | Host the WPF PdfViewer inside a WinForms app using ElementHost to access advanced features (annotations, form filling, signatures) |
| toolbar.md | Show/hide individual toolbar buttons (Open, Save, Zoom, Print, Pan) using ToolbarSettings.<Button>.IsVisible |
Prerequisites
- Development Environment:Visual Studio 2022 or Visual Studio insider 2026(recommended for .NET 10).
- .NET Framework 4.5+ or .NET Core/NET 8+
- Syncfusion WinForms NuGet Package: Syncfusion.PdfViewer.Windows
Documentations
Weekly Installs
4
Repository
syncfusion/pdf-…k-skillsFirst Seen
Today
Security Audits
Installed on
opencode4
gemini-cli4
deepagents4
antigravity4
github-copilot4
codex4