c# pdf reader using : Delete page in pdf online application SDK tool html winforms wpf online telerik_ui_for_winforms_courseware17-part806

8. Replace the TabSelecting event handling code you created in the "Getting Started" project with the code 
below.
Here the DriveInfo object is used to populate all the labels for the panel at the top of the form.
Return
End If
If Not (TryCast(args.TabItem.Tag, DriveInfo)).IsReady Then
Dim tabItem As TabItem = TryCast(args.TabItem, TabItem)
RadMessageBox.SetThemeName(Me.ThemeName)
Dim message As [String] = [String].Format("{0}", tabItem.Text)
RadMessageBox.Show(message, "Drive Unavailable", MessageBoxButtons.OK, 
RadMessageIcon.[Error])
args.Cancel = True
End If
End Sub
[C#] Handling the TabSelecting Event
private void tsFiles_TabSelecting(object sender, TabCancelEventArgs args)
{
if (args.TabItem == null)
return;
if (!(args.TabItem.Tag as DriveInfo).IsReady)
{
TabItem tabItem = args.TabItem as TabItem;
RadMessageBox.SetThemeName(this.ThemeName);
String message = String.Format("{0}", tabItem.Text);
RadMessageBox.Show(message, "Drive Unavailable", MessageBoxButtons.OK,
RadMessageIcon.Error);
args.Cancel = true;
}
}
[VB] Handling the TabSelected Event
Private Sub tsFiles_TabSelected(sender As Object, args As TabEventArgs)
If args.TabItem.Tag <> Nothing Then
Dim driveInfo As DriveInfo = DirectCast(args.TabItem.Tag, DriveInfo)
If driveInfo.IsReady Then
lblDriveName.Text = driveInfo.Name
lblVolumeLabel.Text = If(driveInfo.VolumeLabel.Equals([String].Empty), "No Volume 
Label", driveInfo.VolumeLabel)
lblDriveFormat.Text = driveInfo.DriveFormat
lblDriveType.Text = driveInfo.DriveType.ToString()
lblTotalSpace.Text = driveInfo.TotalSize.ToString("n0")
End If
End If
End Sub
[C#] Handling the TabSelected Event
private void tsFiles_TabSelected(object sender, TabEventArgs args)
{
if (args.TabItem.Tag != null)
{
DriveInfo driveInfo = (DriveInfo)args.TabItem.Tag;
if (driveInfo.IsReady)
{
lblDriveName.Text = driveInfo.Name;
RadControls for Winforms
163
RadControls for Winforms
Delete page in pdf online - remove PDF pages in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Provides Users with Mature Document Manipulating Function for Deleting PDF Pages
delete page on pdf file; add and delete pages in pdf online
Delete page in pdf online - 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
add and remove pages from pdf file online; cut pages from pdf online
9. Press Ctrl-F5 to run the application. Test the "Free Space" and "Show Disconnected" button functionality, 
notice how the labels change as you select tabs, try clicking on a disconnected drive tab to get the 
message box and notice the free space displayed in the progress bar.
lblVolumeLabel.Text = driveInfo.VolumeLabel.Equals(String.Empty) ?
"No Volume Label" : driveInfo.VolumeLabel;
lblDriveFormat.Text = driveInfo.DriveFormat;
lblDriveType.Text = driveInfo.DriveType.ToString();
lblTotalSpace.Text = driveInfo.TotalSize.ToString("n0");
}
}
}
Gotcha! If your theme is not showing up in for the RadListBox, try adding a call to 
RootElement.ForceApplyTheme() in the form's load event.
[VB] Applying the Theme
Private Sub RadForm1_Load(sender As Object, e As EventArgs)
LoadTabStrip()
For Each item As TabItem In tsFiles.Items
If item.ContentPanel.Controls.Count > 0 Then
(TryCast(item.ContentPanel.Controls(0), 
RadListBox)).RootElement.ForceApplyTheme()
End If
Next
End Sub
[C#] Applying the Theme
private void RadForm1_Load(object sender, EventArgs e)
{
LoadTabStrip();
RadControls for Winforms
164
RadControls for Winforms
C# PDF File & Page Process Library SDK for C#.net, ASP.NET, MVC
Provides you with examples for adding an (empty) page to a PDF and adding empty pages You may feel free to define some continuous PDF pages and delete.
delete pages pdf preview; delete pages pdf
C# HTML5 PDF Viewer SDK to view PDF document online in C#.NET
RasterEdge. PRODUCTS: ONLINE DEMOS: Online HTML5 Document Viewer; Online XDoc.PDF C# File: Split PDF; C# Page: Insert PDF pages; C# Page: Delete PDF pages;
delete pdf pages; delete page from pdf reader
Drag and Drop
Set the AllowDragDrop property true so that tabs can be dragged from one position to another. Dragging a tab 
will fire four specialized events:
TabDragStarting fires just before the tab is redrawn as a floating element. This event receives a 
TabEventArgs parameter that contains a TabItem property. The event gives you an opportunity to cancel if 
the item is not eligible to be dragged. 
TabDragStarted fires just after the tab is redrawn as a floating element. This event receives a 
TabEventArgs parameter that contains a TabItem property. 
TabDragEnding fires just before the tab is positioned in the dropped location. The event receives a 
TabDragEndEventArgs parameter that contains properties DraggedItem and ReplacedItem. You can look at 
the ReplacedItem to see where you're dropping the tab and cancel the drop if the target is not eligible. 
TabDragEnded fires just after the tab is positioned in the dropped location. The event receives a 
TabDragEndEventArgs parameter that contains properties DraggedItem and ReplacedItem. 
The example below demonstrates the basic drag drop operation and prevention of dragging or dropping based 
on conditions such as the identity of the dragged and target tabs. This example also incorporates some of the 
techniques described in previous sections: editing, iterating tabs, tab strip layout properties and dynamically 
adding tabs.
The application will be in the form of a script creation tool that always includes a "Cast of Characters", an 
introduction "Teaser" section, any number of "Acts" and an ending "Tag" section. The "Acts" can be dragged and 
rearranged with any other acts, but the Cast, Teaser and Tag tabs are immobile.  Also, there is a tab that hosts 
a RadButton that reads "<Add New Act>". This tab is also not draggable and automatically inserts a new "Act" 
after the last act in the collection of tab items.
foreach (TabItem item in tsFiles.Items)
if (item.ContentPanel.Controls.Count > 0)
(item.ContentPanel.Controls[0] as
RadListBox).RootElement.ForceApplyTheme();
}
RadControls for Winforms
165
RadControls for Winforms
C# PDF Page Insert Library: insert pages into PDF file in C#.net
Free components and online source codes for .NET framework 2.0+. PDF document files by C# code, how to rotate PDF document page, how to delete PDF page using C#
delete pages in pdf online; delete page from pdf preview
VB.NET PDF- View PDF Online with VB.NET HTML5 PDF Viewer
RasterEdge. PRODUCTS: ONLINE DEMOS: Online HTML5 Document Viewer; Online XDoc.PDF C# File: Split PDF; C# Page: Insert PDF pages; C# Page: Delete PDF pages;
delete page from pdf document; delete pages of pdf
 
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. 
Adding Controls to the RadForm
1. Drop a MiscellaneousTheme, Office2007SilverTheme and ImageList components on the form. 
2. Click the ImageList Smart Tag Choose Images link and add images for the following actions: 
"Cast of Characters" 
"Teaser" 
"Act" 
"Tag"
You can find the complete source for this project at:
\VS Projects\TabStrip\<VB|CS>\DragAndDrop
RadControls for Winforms
166
RadControls for Winforms
VB.NET PDF Page Insert Library: insert pages into PDF file in vb.
in VB.NET. Ability to create a blank PDF page with related by using following online VB.NET source code. Support .NET WinForms, ASP
delete pages from a pdf in preview; delete page on pdf
VB.NET PDF - Convert PDF Online with VB.NET HTML5 PDF Viewer
RasterEdge. PRODUCTS: ONLINE DEMOS: Online HTML5 Document Viewer; Online XDoc.PDF C# File: Split PDF; C# Page: Insert PDF pages; C# Page: Delete PDF pages;
delete blank page in pdf; acrobat extract pages from pdf
3. Also in the ImageList Smart Tag set the Image Size to "32, 32" and the Image Bit Depth to "Depth32Bit". 
4. Drop a RadTabStrip on the form and set the ImageList property to point at the ImageList added in the 
previous step. Also set these properties: 
AllowDragDrop = True 
Dock = Fill 
ShowOverFlowButton = True 
TabDropDownButtonPosition = LeftTop 
TabScrollButtonsPosition = RightBottom 
TabsPosition = Left 
TextOrientation = Vertical 
ThemeName = "IE7" 
5. Open the tab strip Items collection editor and add the following tab items and properties.
In this step you'll notice that there are a number of tab item properties to set so that the layout and 
orientation of each tab item match up with the tab strip positioned vertically against the left side of the 
form.
Name = "tiCast", Alignment = TopRight, ImageAlignment = TopLeft, ImageKey = <image representing 
"cast of characters">, ImagePrimitive.AngleTransform = 90, Tag = "fixed", Text = "Cast of Characters", 
TextAlignment = TopRight, TextImageRelation = TextAboveImage, TextOrientation = Vertical. 
Name = "tiTeaser", Alignment = TopRight, ImageAlignment = TopLeft, ImageKey = <image 
representing "teaser">, ImagePrimitive.AngleTransform = 90, Tag = "fixed", Text = "Teaser", 
TextAlignment = TopRight, TextImageRelation = TextAboveImage, TextOrientation = Vertical. 
al. 
RadControls for Winforms
167
RadControls for Winforms
VB.NET PDF - Annotate PDF Online with VB.NET HTML5 PDF Viewer
Ability to insert a text note after selected text. Allow users to draw freehand shapes on PDF page. VB.NET HTML5 PDF Viewer: Annotate PDF Online.
delete page from pdf file online; delete page in pdf document
C# HTML5 PDF Viewer SDK to annotate PDF document online in C#.NET
Ability to insert a text note after selected text. Allow users to draw freehand shapes on PDF page. C# HTML5 PDF Viewer: Annotate PDF Online.
delete page from pdf; delete pages out of a pdf
Name = "tiAct1", Alignment = TopRight, ImageAlignment = TopLeft, ImageKey = <image representing 
enting 
"act">, ImagePrimitive.AngleTransform = 90, Tag = "act", Text = "Act 1", TextAlignment = TopRight, 
TextImageRelation = TextAboveImage, TextOrientation = Vertical. 
Name = "tiNewAct", Alignment = TopRight, ImageAlignment = TopLeft, ImageKey = <image 
representing "act">, ImagePrimitive.AngleTransform = 90, Tag = "fixed", Text = "", TextAlignment = 
TopRight, TextImageRelation = TextAboveImage, TextOrientation = Vertical. 
Name = "tiTagt", Alignment = TopRight, ImageAlignment = TopLeft, ImageKey = <image representing 
"tag">, ImagePrimitive.AngleTransform = 90, Tag = "fixed", Text = "Tag", TextAlignment = TopRight, 
TextImageRelation = TextAboveImage, TextOrientation = Vertical.
6. Add references to the form's code for the following namespaces: 
Telerik.WinControls 
Telerik.WinControls.UI 
Telerik.WinControls.UI.TabStrip 
7. Add a private field to track the number of the current act:
8. Create a helper method to stretch each tab item horizontally.
[VB] Adding the Act Index Field
Private _actIndex As Integer = 0 
[C#] Adding the Act Index Field
private int _actIndex = 0;
RadControls for Winforms
168
RadControls for Winforms
This needs to be done as tabs are added dynamically, i.e. after the initial load, when adding via the "Add 
New Act" button and when dropping.
9. Create a form Load event handler and add the code below.
The form load event handling code sets the initial act index so that as we add more acts they can be 
numbered properly. The index excludes any of the stationary items such as the cast, teaser, add new act 
and tag tabs. The overflow behavior is set to BringIntoView so that as we add more acts than the tab strip 
can contain that they can be brought back into view using the overflow button. An "Add new act" button is 
created and added to the corresponding tab item. The button is hooked up to a Click event handler that 
we will write later. The first item in the tab strip is selected and the items in the tab strip are stretched 
horizontally to take up the maximum width.
[VB] Adding Helper Method
Private Sub StretchItems()
For Each ti As TabItem In radTabStrip1.Items
ti.StretchHorizontally = True
Next
End Sub
[C#] Adding Helper Method
private void StretchItems()
{
foreach (TabItem ti in radTabStrip1.Items)
{
ti.StretchHorizontally = true;
}
}
[VB] Handling the Form Load Event
Private Sub RadForm1_Load(sender As Object, e As EventArgs)
' set the initial index to exclude the stationary items, i.e. cast, teaser, etc.
_actIndex = radTabStrip1.Items.Count - 4
' allow tabs to be brought back in view from the overflow button
radTabStrip1.TabStripElement.TabStripOverFlowBehavior = 
OverFlowBehavior.BringIntoView
' create an add act button element and add it
' to the tab item's children
Dim button As New RadButtonElement()
button.Padding = New Padding(3)
button.Text = "<Add New Act>"
button.ImageKey = "Copy.png"
button.TextImageRelation = TextImageRelation.TextAboveImage
button.ImagePrimitive.AngleTransform = 90
button.Click += New EventHandler(button_Click)
tiNewAct.Children.Add(button)
' select the "cast" tab instead of the "tag"
radTabStrip1.SelectFirstVisibleItem()
StretchItems()
End Sub
[C#] Handling the Form Load Event
private void RadForm1_Load(object sender, EventArgs e)
{
// set the initial index to exclude the stationary items, i.e. cast, teaser, etc.
_actIndex = radTabStrip1.Items.Count - 4;
RadControls for Winforms
169
RadControls for Winforms
10. Add the event handler for the "Add New Act" button.
.
To add a new act we first increment the act index, then create a new TabItem with the layout property 
settings that will orient the tab, text and image properly in respect to the tab strip. Notice that we set 
the Tag property to "act" instead of "fixed". We will use the tags later to know what items can be dragged 
and dropped. Also notice the DoubleClick and TextChanging event handlers. The DoubleClick event will 
initiate editing the tab item text so that the user can rename the acts. The TextChanging event handler 
will prevent the user from entering blank text.
// allow tabs to be brought back in view from the overflow button
radTabStrip1.TabStripElement.TabStripOverFlowBehavior =
OverFlowBehavior.BringIntoView;
// create an add act button element and add it
// to the tab item's children
RadButtonElement button = new RadButtonElement();
button.Padding = new Padding(3);
button.Text = "<Add New Act>";
button.ImageKey = "Copy.png";
button.TextImageRelation = TextImageRelation.TextAboveImage;
button.ImagePrimitive.AngleTransform = 90;
button.Click += new EventHandler(button_Click);
tiNewAct.Children.Add(button);
// select the "cast" tab instead of the "tag"
radTabStrip1.SelectFirstVisibleItem();
StretchItems();
}
[VB] Handling the "Add New Act" Button Click Event
Sub button_Click(sender As Object, e As EventArgs)
' increment the act index
System.Math.Max(System.Threading.Interlocked.Increment(_actIndex),_actIndex - 1)
' create a tab item for the new act
Dim item As New TabItem()
item.ImageKey = "Copy.png"
item.ImageAlignment = ContentAlignment.BottomLeft
item.TextImageRelation = TextImageRelation.TextAboveImage
item.TextAlignment = ContentAlignment.TopRight
item.Text = "Act " + _actIndex.ToString()
item.Tag = "act"
item.ImagePrimitive.AngleTransform = 90
' we allow the user to double click the tab to edit
' and prevent empty entry in the TextChanging handler
item.DoubleClick += New EventHandler(ActDoubleClick)
item.TextChanging += New TextChangingEventHandler(ActTextChanging)
' insert after "cast", "teaser" and other acts
radTabStrip1.Items.Insert(_actIndex + 1, item)
StretchItems()
End Sub
[C#] Handling the "Add New Act" Button Click Event
void button_Click(object sender, EventArgs e)
{
// increment the act index
_actIndex++;
// create a tab item for the new act
TabItem item = new TabItem();
item.ImageKey = "Copy.png";
RadControls for Winforms
170
RadControls for Winforms
11. Add the event handlers for the act DoubleClick and TextChanging event handlers.
.
To enable editing of tab item text on-the-fly, set the AllowEdit property of the tab strip to true, then 
call BeginEdit() from the TabStripElement.
The TextChanging event handler simply cancels the event if the NewValue passed in the event arguments 
is an empty string.
item.ImageAlignment = ContentAlignment.BottomLeft;
item.TextImageRelation = TextImageRelation.TextAboveImage;
item.TextAlignment = ContentAlignment.TopRight;
item.Text = "Act " + _actIndex.ToString();
item.Tag = "act";
item.ImagePrimitive.AngleTransform = 90;
// we allow the user to double click the tab to edit
// and prevent empty entry in the TextChanging handler
item.DoubleClick += new EventHandler(ActDoubleClick);
item.TextChanging += new TextChangingEventHandler(ActTextChanging);
// insert after "cast", "teaser" and other acts
radTabStrip1.Items.Insert(_actIndex + 1, item);
StretchItems();
}
[VB] Handling the DoubleClick and TextChanging Events
Private Sub ActDoubleClick(sender As Object, e As EventArgs)
' allow tab to be edited only if tagged as "act"
radTabStrip1.AllowEdit = False
Dim item As TabItem = TryCast(sender, TabItem)
If item.Tag.ToString().Equals("act"Then
radTabStrip1.AllowEdit = True
radTabStrip1.TabStripElement.BeginEdit()
End If
End Sub
Private Sub ActTextChanging(sender As Object, e As
Telerik.WinControls.TextChangingEventArgs)
' prevent titles being entered to tabs
e.Cancel = e.NewValue.Equals([String].Empty)
End Sub
[C#] Handling the DoubleClick and TextChanging Events
private void ActDoubleClick(object sender, EventArgs e)
{
// allow tab to be edited only if tagged as "act"
radTabStrip1.AllowEdit = false;
TabItem item = sender as TabItem;
if (item.Tag.ToString().Equals("act"))
{
radTabStrip1.AllowEdit = true;
radTabStrip1.TabStripElement.BeginEdit();
}
}
private void ActTextChanging(object sender, 
Telerik.WinControls.TextChangingEventArgs e)
{
// prevent titles being entered to tabs
e.Cancel = e.NewValue.Equals(String.Empty);
}
RadControls for Winforms
171
RadControls for Winforms
12. Create event handlers for the tab strip drag events.
The TabDragStarting event handler gets the dragged tab item, checks if the Tag is "fixed" and if so cancels 
the event. This prevents tabs we don't want moved from being dragged.
The TabDragEnding is much like the TabDragStarting event except that we want to prevent the movable 
"act" tabs from being dragged before the "cast of characters" or "Teaser" and from being dragged after the 
"Add New Act" or "Tag" tabs. In this case you look at the ReplacedItem to know the target of the drag-drop 
operation.
When the drag-and-drop operation completes, the StretchItems() method is called to maximize the width 
for all of the tabs.
 
In this chapter you explored creating tabbed interfaces and managing controls within associated content 
panels. The chapter starts with a tour of usability and feature highlights, then moves onto common Items 
collection programmatic tasks such as adding and removing tabs, iterating, locating and selecting tabs. The 
chapter also explains how to implement tab drag and drop, handle layout and dimensions, overflow, tab images 
and text.
 
[VB] Handling the Tab Strip Drag Events
Private Sub radTabStrip1_TabDragStarting(sender As Object, args As
TabDragCancelEventArgs)
' prevent "fixed" items from being dragged.
args.Cancel = args.DraggedItem.Tag.ToString().Equals("fixed")
End Sub
Private Sub radTabStrip1_TabDragEnding(sender As Object, args As
TabDragCancelEventArgs)
' don't allow replacing fixed items
args.Cancel = args.ReplacedItem.Tag.ToString().Equals("fixed")
End Sub
Private Sub radTabStrip1_TabDragEnded(sender As Object, args As TabDragEventArgs)
StretchItems()
End Sub
[C#] Handling the Tab Strip Drag Events
private void radTabStrip1_TabDragStarting(object sender, TabDragCancelEventArgs 
args)
{
// prevent "fixed" items from being dragged.
args.Cancel = args.DraggedItem.Tag.ToString().Equals("fixed");
}
private void radTabStrip1_TabDragEnding(object sender, TabDragCancelEventArgs args)
{
// don't allow replacing fixed items
args.Cancel = args.ReplacedItem.Tag.ToString().Equals("fixed");
}
private void radTabStrip1_TabDragEnded(object sender, TabDragEventArgs args)
{
StretchItems();
}
7.8  Summary
 
RadControls for Winforms
172
RadControls for Winforms
Documents you may be interested
Documents you may be interested