c# pdf reader using : Delete pages from a pdf document application Library tool html asp.net web page online telerik_ui_for_winforms_courseware28-part818

// retrieve the list of databases for the server:
// -get the number of objects for each database,
// -keep track of the min and max number of objects.
// -calculate progress,
// -create and populate a DatabaseInfo object and pass to
// ProgressChanged event handler.
// Create and populate a DBWorkerResult object and assign to the arguments
// Result property.
void dbWorker_DoWork(object sender, DoWorkEventArgs e)
{
Server server = new Server(workerParams.ServerName);
int count = 0;
int maxObjectCount = 0;
int minObjectCount = 0;
foreach (Database database in server.Databases)
{
count++;
// ignore empty databases
if (database.IsAccessible)
{
// get all objects in the database
DataTable dtObjects = database.EnumObjects();
// calculate progress
int progress = (int)(((double)count / (double)server.Databases.Count) * 100);
// assign the first non-zero value
if ((minObjectCount == 0) && (dtObjects.Rows.Count > 0))
minObjectCount = dtObjects.Rows.Count;
// get min and max number of objects for all databases in server
maxObjectCount = Math.Max(maxObjectCount, dtObjects.Rows.Count);
minObjectCount = Math.Min(maxObjectCount, dtObjects.Rows.Count);
// Call ReportProgress to trigger ProgressChanged event.
// DatabaseInfo passed as the UserState property
DatabaseInfo databaseInfo = new DatabaseInfo(server.Name, database.Name, 
dtObjects.Rows.Count);
(sender as BackgroundWorker).ReportProgress(progress, databaseInfo);
}
}
e.Result = new DBWorkerResult(server.Name, maxObjectCount, minObjectCount);
}
// respond to ReportProgress() method calls, set progress bar value,
// extract the DatabaseInfo object from the argument's UserState property:
// add to the generic list of DatabaseInfo objects for use on completion,
// and display a status message with the current database name.
void dbWorker_ProgressChanged(object sender, ProgressChangedEventArgs e)
{
pbStatus.Value1 = e.ProgressPercentage;
DatabaseInfo info = e.UserState as DatabaseInfo;
_dbInfoList.Add(info);
DisplayStatus(info.DatabaseName, StatusTypes.Info);
}
// update the UI using the Result property of the args, or
// the Error property if the operation fails.
void dbWorker_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
{
if (e.Error != null)
{
RadControls for Winforms
273
RadControls for Winforms
Delete pages from a pdf document - remove PDF pages in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Provides Users with Mature Document Manipulating Function for Deleting PDF Pages
delete pages pdf preview; acrobat remove pages from pdf
Delete pages from a pdf document - VB.NET PDF Page Delete Library: remove PDF pages in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
Visual Basic Sample Codes to Delete PDF Document Page in .NET
delete a page in a pdf file; delete pdf pages
2. Using the Property window Events tab for "lbServers" list box, create a SelectedIndexChanged event 
handler with the code below. The event handler will repopulate the list of databases.
// reset the "Databases" label to default value
lblDatabases.Text = "Databases";
// display the exception
DisplayStatus(e.Error.Message, StatusTypes.Error);
}
else
{
DBWorkerResult workerResult = e.Result as DBWorkerResult;
tbMaxObjects.Maximum = workerResult.MaxItems;
// if there are no items, then minimum is zero, otherwise,
// set to the fewest number of items (will always display at least one)
tbMaxObjects.Minimum = workerResult.MinItems == 0 ? 0 : workerResult.MinItems 
1;
int range = workerResult.MaxItems - workerResult.MinItems;
tbMaxObjects.TickFrequency = range / 10;
tbMaxObjects.Value = tbMaxObjects.Maximum;
// only enable when there are items
tbMaxObjects.Enabled = workerResult.MaxItems > 0;
lblCount.Text = tbMaxObjects.Value.ToString();
LoadDatabaseList(lbDatabases, tbMaxObjects.Value);
lblDatabases.Text = "Databases for " + workerResult.ServerName;
string message = "Found " + lbDatabases.Items.Count + " databases for " + 
workerResult.ServerName;
DisplayStatus(message, StatusTypes.Info);
}
HideProgressBar();
SetUIEnabled(true);
}
Gotcha! In the DoWork event handler at the line that references IsAccessible you may 
receive a SqlError if you have connections setup that no longer point to valid files, as in 
the case of an Access *.mdb file where the file has been removed from the path. You can 
either remove these connections with a tool like SQL Server Management Studio, or use 
try..catch block around the failing code.
[VB] Handling the SelectedIndexChanged Event
Private Sub lbServers_SelectedIndexChanged(sender As Object, e As EventArgs)
Dim listBox As RadListBox = TryCast(sender, RadListBox)
If listBox.SelectedItem <> Nothing Then
SetUIEnabled(False)
lbDatabases.Items.Clear()
_dbInfoList = New List(Of DatabaseInfo)()
Dim serverName As String = (TryCast(listBox.SelectedItem, RadListBoxItem)).Text
ShowProgressBar()
DisplayStatus("Finding databases for " + serverName, StatusTypes.Find)
RunDbWorker(serverName, tbMaxObjects.Value)
End If
End Sub
[C#] Handling the SelectedIndexChanged Event
private void lbServers_SelectedIndexChanged(object sender, EventArgs e)
{
RadListBox listBox = sender as RadListBox;
if (listBox.SelectedItem != null)
RadControls for Winforms
274
RadControls for Winforms
C# PDF Page Insert Library: insert pages into PDF file in C#.net
how to merge PDF document files by C# code, how to rotate PDF document page, how to delete PDF page using C# .NET, how to reorganize PDF document pages and how
delete page from pdf; delete blank page in pdf
C# PDF File & Page Process Library SDK for C#.net, ASP.NET, MVC
Page Process. File: Merge, Append PDF Files. File: Split PDF Document. File: Compress PDF. Page: Create Thumbnails. Page: Insert PDF Pages. Page: Delete Existing
delete page in pdf reader; delete page on pdf document
3. Press Ctrl-F5 to run the project. Again press the "Find Servers" button. Then click on the list box to choose 
a server name. That will populate the second list with database names.
Respond to Events
Two more events still need to be handled, the SelectedIndexChanged for the database list box and the 
{
SetUIEnabled(false);
lbDatabases.Items.Clear();
_dbInfoList = new List<DatabaseInfo>();
string serverName = (listBox.SelectedItem as RadListBoxItem).Text;
ShowProgressBar();
DisplayStatus("Finding databases for " + serverName, StatusTypes.Find);
RunDbWorker(serverName, tbMaxObjects.Value);
}
}
RadControls for Winforms
275
RadControls for Winforms
C# PDF Page Extract Library: copy, paste, cut PDF pages in C#.net
Create the new document with 3 pages. String outputFilePath = Program.RootPath + "\\" Output.pdf"; newDoc.Save(outputFilePath);
add and delete pages from pdf; copy pages from pdf into new pdf
VB.NET PDF Page Extract Library: copy, paste, cut PDF pages in vb.
' Create the new document with 3 pages. Dim outputFilePath As String = Program.RootPath + "\\" Output.pdf" newDoc.Save(outputFilePath).
delete pages in pdf; acrobat export pages from pdf
ValueChanged event handler needs to be replaced with new code.
1. Create a SelectedIndexChanged event handler for "lbDatabases" and add the code below. This code 
retrieves the DatabaseInfo object that's stored in the Value property of the selected item. The server 
name, database name and number of objects are displayed in the status strip. Notice that the 
RadLabelElement in the status strip displays text on multiple lines.
2. Replace the ValueChanged event handler for the "Max Items" track bar. The event handler now calls 
LoadDatabaseList() and passes the new track bar value.
3. Press Ctrl-F5 to run the application. 
[VB] Handling the SelectedIndexChanged Event for the Database List Box
Private Sub lbDatabases_SelectedIndexChanged(sender As Object, e As EventArgs)
If (TryCast(sender, RadListBox)).SelectedValue <> Nothing Then
Dim info As DatabaseInfo = TryCast((TryCast(sender, RadListBox)).SelectedValue, 
DatabaseInfo)
Dim message As String = [String].Format("{0}\{1}{2}{3} objects", info.ServerName, 
info.DatabaseName, Environment.NewLine, info.ObjectCount)
DisplayStatus(message, StatusTypes.Info)
End If
End Sub
[C#] Handling the SelectedIndexChanged Event for the Database List Box
private void lbDatabases_SelectedIndexChanged(object sender, EventArgs e)
{
if ((sender as RadListBox).SelectedValue != null)
{
DatabaseInfo info = (sender as RadListBox).SelectedValue as DatabaseInfo;
string message = String.Format("{0}\\{1}{2}{3} objects",
info.ServerName, info.DatabaseName, Environment.NewLine, info.ObjectCount);
DisplayStatus(message, StatusTypes.Info);
}
}
[VB] Handling the ValueChanged Event
Private Sub tbMaxObjects_ValueChanged(sender As Object, e As System.EventArgs)
Dim trackBar As RadTrackBar = TryCast(sender, RadTrackBar)
LoadDatabaseList(lbDatabases, trackBar.Value)
lblCount.Text = trackBar.Value.ToString()
End Sub
[C#] Handling the ValueChanged Event
private void tbMaxObjects_ValueChanged(object sender, System.EventArgs e)
{
RadTrackBar trackBar = sender as RadTrackBar;
LoadDatabaseList(lbDatabases, trackBar.Value);
lblCount.Text = trackBar.Value.ToString();
}
RadControls for Winforms
276
RadControls for Winforms
VB.NET PDF Page Insert Library: insert pages into PDF file in vb.
Able to add and insert one or multiple pages to existing adobe PDF document in VB.NET. Add and Insert Multiple PDF Pages to PDF Document Using VB.
add and remove pages from pdf file online; delete pages pdf files
C# PDF metadata Library: add, remove, update PDF metadata in C#.
C#.NET PDF SDK - Edit PDF Document Metadata in C#.NET. Allow C# Developers to Read, Add, Edit, Update and Delete PDF Metadata in .NET Project.
delete pages of pdf preview; delete pages from a pdf
In this chapter you learned how to provide user feedback using RadStatusStrip, RadTrackBar, RadWaitingBar, 
RadProgressBar and RadLabel controls. You learned the appropriate circumstances to use a RadWaitingBar vs a 
RadProgressBar. You learned how to use the RadStatusStrip at design time and programmatically. You hosted a 
control inside the status strip. Finally, you learned how to coordinate long running background processes with 
the user interface.
 
10.6 Summary
 
 
RadControls for Winforms
277
RadControls for Winforms
C# Word - Delete Word Document Page in C#.NET
Delete Consecutive Pages from Word in C#. How to delete a range of pages from a Word document. How to delete several defined pages from a Word document.
delete page from pdf reader; reader extract pages from pdf
C# PowerPoint - Delete PowerPoint Document Page in C#.NET
C#. How to delete a range of pages from a PowerPoint document. C#. How to delete several defined pages from a PowerPoint document.
delete pages from a pdf online; delete page in pdf file
Learn how input bindings are created and initiated by RadControl actions. 
Create and assign input bindings programmatically and through using the ShortCuts control. 
Using the mouse is a great way to begin using an interface, but as the user becomes an expert at using your 
applications they can get an appetite for the speed made possible by keyboard navigation alone. By binding 
command objects to keyboard "chords" (one or more keys in combination, e.g. Ctrl-Shift-F2) the user can 
instantly invoke what might have been several mouse moves and clicks. The Telerik Shortcuts component acts 
as a central clearing house for commands, chords and elements that form the context of the command. You can 
define your own commands or hook up to commands that already exist in the form.
In this project you will hook up the Click event handlers of several menu items to keyboard shortcuts.
Preparing the Project
1. Create a new Windows Forms application. 
2. In the Solution Explorer, delete the default form. 
3. Also in the Solution Explorer, right-click the project and select Add | New Item... from the context menu. 
4. Select the "Telerik RadForm" template and click the Add button to close the dialog. 
5. Change the new RadForm1 to be the startup form. 
Adding Controls to the RadForm
1. Drag a Shortcuts component to the form. 
2. Drag a RadStatusStrip to the form. Add a RadLabelElement to the status strip, set the Name to "lblStatus" 
and Text to "". 
3. Drag a RadMenu to the form. Add a top level menu item with Name = "miFile" and Text = "File". Add 
additional menu elements underneath the "File" menu item: 
RadMenuItem: Name = "miOpen", Text = "Open". 
RadMenuItem: Name = "miClose, Text = "Close". 
RadMenuSeparatorItem. 
RadMenuItem: Name = "miExit", Text = "Exit".
The menu should look something like the example below.
11  Keyboard Shortcut and Command Bindings
11.1 Objectives
11.2 Introduction
11.3 Getting Started
You can find the complete source for this project at:
\VS Projects\Keyboard Shortcuts\<VB|CS>\GettingStarted
 
RadControls for Winforms
278
RadControls for Winforms
4. Add a Click event handler to the "Open" menu and name it "MenuClick". Add the code below to the event 
handler and assign this same handler to the "Close" and "Exit" menu items.
5. In the designer, select "miOpen", navigate to the CommandBinding property in the Properties Window and 
click the ellipses to open the ChordsMapping dialog. Configure the command and shortcut keys:
In the "Commands found on this form" select the "ActionCommand" from the list. This command hooks 
up to the click event of "miOpen". Notice that in the "Execute command on" drop down llist (lower 
right side of the dialog); the commands all relate to the selected item in this list.
In the "Press shortcut keys" entry select the "Ctrl" checkbox and enter a "1" so that the keys entry reads 
"Ctrl+ 1".
Click the Assign button.
Click the OK button to close the dialog.
[VB] Handling the Menu Item Click Event
Private Sub MenuClick(sender As Object, e As EventArgs)
lblStatus.Text = "You clicked " + (TryCast(sender, RadMenuItem)).Text
End Sub
[C#] Handling the Menu Item Click Event
private void MenuClick(object sender, EventArgs e)
{
lblStatus.Text = "You clicked " + (sender as RadMenuItem).Text;
}
RadControls for Winforms
279
RadControls for Winforms
6. Repeat the last step for the "miClose" except that the "Keys" entry should be "Ctrl+2".  
7. Repeat the last step for the "miExit" except that the "Keys" entry should be "Ctrl+3".
8. Press Ctrl-F5 to run the application. Enter Ctrl-1, Ctrl-2 and Ctrl-3 and watch the status bar to see the 
events triggered by the command bindings.
11.4 Programming Keyboard Shortcuts
 
RadControls for Winforms
280
RadControls for Winforms
If you want to encapsulate command logic, you can descend from CommandBase and override the Execute() 
method.
To create your own binding on the fly in code you need to create an InputBinding object. Set the 
CommandContext to the object that you want associated with the command. The CommandContext object will 
show up in the first element of the "settings" parameter array passed to the Execute() method. Assign your 
command object instance to the InputBinding Command property. Use a Chord object to build the combination 
of keys that are used to trigger the command and assign it to the InputBinding Chord property.  Finally, assign 
this new InputBinding to the CommandBinding of a RadElement.
[VB] Adding a Custom Command
Private Sub RadForm1_Load(ByVal sender As ObjectByVal e As EventArgs)
Dim binding As New InputBinding()
' the object context for the command
binding.CommandContext = miExit
' assign the CommandBase descendant object
binding.Command = New ExitCommand()
' the user keypress that triggers the command
binding.Chord = New Chord("Ctrl+E")
' add binding to command binding(s)
miExit.CommandBinding = binding
End Sub
Private Class ExitCommand
Inherits CommandBase
Public Overrides Function Execute(ParamArray ByVal settings() As ObjectAs Object
' retrieve the menu
Dim menuItem As RadMenuItem = TryCast(settings(0), RadMenuItem)
' walk back to the RadMenu
Dim menu As RadMenu = TryCast(menuItem.MenuElement.ElementTree.Control, RadMenu)
' get the form under the menu, set forms "lblStatus" text
TryCast(menu.Parent, RadForm1).lblStatus.Text = "You clicked " & menuItem.Text
Return Nothing
End Function
End Class
[C#] Adding a Custom Command
private void RadForm1_Load(object sender, EventArgs e)
{
InputBinding binding = new InputBinding();
// the object context for the command
binding.CommandContext = miExit;
// assign the CommandBase descendant object
binding.Command = new ExitCommand();
// the user keypress that triggers the command
binding.Chord = new Chord("Ctrl+E");
// add binding to command binding(s)
miExit.CommandBinding = binding;
}
private class ExitCommand : CommandBase
{
public override object Execute(params object[] settings)
{
// retrieve the menu
RadMenuItem menuItem = settings[0] as RadMenuItem;
// walk back to the RadMenu
RadMenu menu = menuItem.MenuElement.ElementTree.Control as RadMenu;
// get the form under the menu, set forms "lblStatus" text
RadControls for Winforms
281
RadControls for Winforms
The command can be assigned to an individual RadElement CommandBinding or to the RadControl's 
CommandBindings collection. In this second case the CommandContext can identify the specific element within 
the control that should be associated with the command.
If you want more complex arrangements of keypresses you can use the Chord constructor overload that takes a 
generic List of Keys. Keys is an enumeration of all the possible keypresses in the Windows Forms environment 
including the function keys, scroll, number lock, etc. You can also add a ChordModifier to add Control, Shift 
and Alt keys that are to be held down while the other keys are pressed. The example below fires when the 
control keys is held down while the right and left arrow keys are pressed.
What if you want to associate a command with an element within a RadControl? The example below defines an 
InputBinding with a key chord "Alt-F". In code you can get the DropDownButtonElement and assign it to the 
binding's CommandContext. To react to the command a Click event handler is defined for the 
DropDownButtonElement. When "Alt-F" is pressed the command executes and fires the Click event of the 
CommandContext object (the DropDownButtonElement).
 
(menu.Parent as RadForm1).lblStatus.Text = "You clicked " + menuItem.Text;
return null;
}
}
[VB] Adding to the Controls CommandBindings Collection
radMenu1.CommandBindings.Add(binding) 
[C#] Adding to the Controls CommandBindings Collection
radMenu1.CommandBindings.Add(binding); 
[VB] Adding ChordModifier and Keys List
Dim chordModifier As New ChordModifier()
chordModifier.ControlModifier = True
binding.Chord = New Chord(New List(Of Keys)(), chordModifier) 
[C#] Adding ChordModifier and Keys List 
ChordModifier chordModifier = new ChordModifier();
chordModifier.ControlModifier = true;  
binding.Chord = new Chord(new List<Keys>() { Keys.Left, Keys.Right }, 
chordModifier);
[VB] Assigning Command Context
Public Sub New()
InitializeComponent()
Me.shortcuts1.InputBindings(0).CommandContext = 
RadControls for Winforms
282
RadControls for Winforms
Documents you may be interested
Documents you may be interested