CheckPrimitives, one at the default size 
and the second scaled up by a factor of 5.
FillPrimitive
The FillPrimitive class is responsible for 
filling in an area on the screen. 
GradientStyle is a pivitol property that 
allows you to select from solid, linear, 
radial, glass, office glass, office glass 
rectangle, gel, and vista styles. 
GradientStyle characterizes how the other 
properties are interpreted: 
NumberOfColors, GradientAngle, 
GradientPercentage, BackColor, 
BackColor2, BackColor3 and BackColor4.
GripPrimitive
GripPrimitive displays a vertical row of 
dots as a visual cue to users that this is an 
area that can be gripped and dragged. 
GripPrimitive is used in the RadToolStrip to 
display on the left hand side of each strip. 
Grip dots are displayed using BackColor 
and BackColor2 colors. BackColor2 
represents a shadow to set the dots off the 
background, particularly when the dots 
and the background contain some of the 
same colors.
ImagePrimitive
Use the ImagePrimitive class whenever you 
need to draw an image as part of rendering 
a control. The properties specific to 
displaying images are Image, ImageKey, 
ImageIndex and ImageScaling. Note: the 
ImageList property is introduced in the 
RadControl class.
LinePrimitive
LinePrimitive is actually a variant of a 
filled rectangle. The shadow of the fill is 
set by the BackColor, BackColor2, 
BackColor3 and BackColor4 properties. The 
way these four colors are used is 
determined by the GradientStyle and 
GradientAngle properties. LineWidth sets 
the thickness of the line. Some 
GradientStyle settings will not be visible if 
the LineWidth is too narrow.
The OverflowPrimitive is a visual indicator 
that more choices are available. The 
RadControls for Winforms
123
RadControls for Winforms
Delete pages on 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 a page from a pdf online; delete a page from a pdf file
Delete pages on 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
delete pages from pdf reader; delete blank pages from pdf file
OverflowPrimitive
OverflowPrimitive consists of a triangle 
and a line just under the base of the 
triangle. The triangle and line are colored 
using the ForeColor property. Depending 
on the Direction property of the arrow, 
BackColor and ShadowColor may be used.
ProgressBarPrimitive
ProgressBarPrimitive is a specialized 
descendant of FillPrimitive that indicates 
the state of a long running process. The fill 
area is controlled by the GradientStyle and 
the BackColor..BackColor4 properties. The 
fill covers the percentage area between 
Minimum and Maximum specified by the 
Value1 property. Value1 is rendered using 
up to all four colors. Value2 displays in the 
BackColor at 25% opacity. Orientation 
controls the starting point of the fill and 
can originate from Left, Right, Top or 
Bottom. The example shows a Linear fill 
for Value1 (set to 20), and a pale Aqua for 
Value2 (set to 70).
RadioPrimitive
RadioPrimitive provides the basic visual 
layout of a radio button background. 
Typically you would use a higher level 
object, i.e. the RadRadioButtonElement to 
include in your control. 
RadRadioButtonElement handles the 
toggling of other peer level radio buttons
RectanglePrimitive
RectanglePrimitive is a lightweight 
primitive that draws a rectangle using 
ForeColor only. Unlike BorderPrimitive, 
RectanglePrimitive does not have 
GradientStyle, BoxStyle and other color 
properties.
TextPrimitive
Use the TextPrimitive class whenever you 
need to display text as part of rendering a 
control. Color for the font in the primitive 
is set by the ForeColor property. Other 
text related properties are Text, 
TextAlignment, TextFormatFlags, 
TextOrientation, Shadow.
TrackBarPrimitive
TrackBarPrimitive represents the basic UI 
of a trackbar, without the trackbar thumb. 
Typically you would use a higher level 
object, i.e. the RadTrackBarElement to 
include in your control. 
RadTrackBarElement handles the position 
of the track bar thumb and the various 
events that go into making the track bar 
useful.
RadControls for Winforms
124
RadControls for Winforms
C# PDF File & Page Process Library SDK for C#.net, ASP.NET, MVC
C# view PDF online, C# convert PDF to tiff, C# read PDF, C# convert PDF to text, C# extract PDF pages, C# comment annotate PDF, C# delete PDF pages, C# convert
delete pages of pdf; cut pages out of pdf online
C# PDF Page Insert Library: insert pages into PDF file in C#.net
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 pdf pages in reader; delete page pdf acrobat reader
 
Elements fall into three categories, depending on their base class:
Layout elements derive from LayoutPanel. Each LayoutPanel arranges child items in a particular manner. 
Painted elements derive from BasePrimitive. They override the OnPaint method to draw figures on the 
controls graphic surface. 
Component elements derive from RadItem. RadItem descendants handle user input and can be worked 
with in the design environment. A component element overrides the virtual CreateChildElements() method 
to create one or more layout elements and primitives. Typically TPF based controls are simple wrappers 
around RadItem descendant classes, and the RadItem descendant classes define logic and user interface. 
Accessing Elements
Now that you know how to get at elements that make up RadControls at design time using the Hierarchy Editor 
dialog, you can access these same properties in code. At design time we can start with two RadButtons, the 
first styled like the example in "Getting Started", the second is the stock RadButton with no changes.
The code below will match the second button to look like the first.
FocusPrimitive
FocusPrimitive supplies user interface cues 
that an element has received focus. The 
constructor for FocusPrimitive takes a 
BorderPrimitive that provides the basic 
dimensions. Fore colors and inner colors 
may be set explicitly or default control 
colors are used.
6.6  Elements
6.7  Programming the Telerik Presentation Foundation
 
RadControls for Winforms
125
RadControls for Winforms
VB.NET PDF Page Insert Library: insert pages into PDF file in vb.
add and insert one or multiple pages to existing adobe PDF document in VB.NET. Ability to create a blank PDF page with related by using following online VB.NET
delete pages of pdf online; delete pages pdf document
C# HTML5 PDF Viewer SDK to view PDF document online in C#.NET
C# view PDF online, C# convert PDF to tiff, C# read PDF, C# convert PDF to text, C# extract PDF pages, C# comment annotate PDF, C# delete PDF pages, C# convert
delete a page from a pdf in preview; delete pages from pdf without acrobat
As you will see, the trick is to traverse the Children RadElementCollection, locate the correct element and cast 
it to the appropriate type. The example below first gets the RadButtonElement and uses that to access the 
other elements. 
This top level element is often surfaced as a property, e.g. you can reference "radButton1.ButtonElement" 
instead of "radButton1.RootElement.Children".
[VB] Setting Button Element Properties
Public Sub New()
InitializeComponent()
' get the "ButtonElement", just under the root element,
' set the padding and text
Dim buttonElement As RadButtonElement = TryCast(radButton2.RootElement.Children(0), 
RadButtonElement)
buttonElement.TextImageRelation = TextImageRelation.TextBeforeImage
buttonElement.Padding = New Padding(10)
buttonElement.Text = "World" + Environment.NewLine + "Clock"
' access the fill primitive, use "OfficeGlass" style and set coloring
Dim fillPrimitive As FillPrimitive = DirectCast(buttonElement.GetChildrenByType
(GetType(FillPrimitive))(0), FillPrimitive)
fillPrimitive.GradientStyle = Telerik.WinControls.GradientStyles.OfficeGlass
fillPrimitive.BackColor = Color.Blue
fillPrimitive.BackColor2 = Color.LightBlue
fillPrimitive.BackColor3 = Color.Lavender
fillPrimitive.BackColor4 = Color.Purple
' get the image primitive and set image. Set the opacity to be 50% transparent.
Dim imagePrimitive As ImagePrimitive = TryCast(DirectCast(buttonElement.Children
(1).Children(0), ImagePrimitive), ImagePrimitive)
imagePrimitive.Image = Properties.Resources.Globe
imagePrimitive.Opacity = 0.5
' get the text primitive and set the font to use a bold, script
Dim textPrimitive As TextPrimitive = TryCast(DirectCast(buttonElement.Children
(1).Children(1), TextPrimitive), TextPrimitive)
textPrimitive.Font = New Font("Segoe Script", 8.25F, FontStyle.Bold)
' get the border primitive and hide it.
Dim borderPrimitive As BorderPrimitive = DirectCast(buttonElement.GetChildrenByType
RadControls for Winforms
126
RadControls for Winforms
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 pages from a pdf file; delete pages pdf file
VB.NET PDF - Convert PDF Online with VB.NET HTML5 PDF Viewer
C# view PDF online, C# convert PDF to tiff, C# read PDF, C# convert PDF to text, C# extract PDF pages, C# comment annotate PDF, C# delete PDF pages, C# convert
add remove pages from pdf; delete pages on pdf file
(GetType(BorderPrimitive))(0), BorderPrimitive)
borderPrimitive.Visibility = Telerik.WinControls.ElementVisibility.Hidden
' match the button sizes
radButton2.Size = radButton1.Size
End Sub
[C#] Setting Button Element Properties
public Form1()
{
InitializeComponent();
// get the "ButtonElement", just under the root element,
// set the padding and text
RadButtonElement buttonElement = radButton2.RootElement.Children[0] as
RadButtonElement;
buttonElement.TextImageRelation = TextImageRelation.TextBeforeImage;
buttonElement.Padding = new Padding(10);
buttonElement.Text = "World" + Environment.NewLine + "Clock";
// access the fill primitive, use "OfficeGlass" style and set coloring
FillPrimitive fillPrimitive =
(FillPrimitive)buttonElement.GetChildrenByType(typeof(FillPrimitive))[0];
fillPrimitive.GradientStyle = Telerik.WinControls.GradientStyles.OfficeGlass;
fillPrimitive.BackColor = Color.Blue;
fillPrimitive.BackColor2 = Color.LightBlue;
fillPrimitive.BackColor3 = Color.Lavender;
fillPrimitive.BackColor4 = Color.Purple;
// get the image primitive and set image. Set the opacity to be 50% transparent.
ImagePrimitive imagePrimitive =
(ImagePrimitive)buttonElement.Children[1].Children[0] as ImagePrimitive;
imagePrimitive.Image = Properties.Resources.Globe;
imagePrimitive.Opacity = 0.5;
// get the text primitive and set the font to use a bold, script
TextPrimitive textPrimitive =
(TextPrimitive)buttonElement.Children[1].Children[1] as TextPrimitive;
textPrimitive.Font = new Font("Segoe Script", 8.25F, FontStyle.Bold);
// get the border primitive and hide it.
BorderPrimitive borderPrimitive =
(BorderPrimitive)buttonElement.GetChildrenByType(typeof(BorderPrimitive))[0];
borderPrimitive.Visibility = Telerik.WinControls.ElementVisibility.Hidden;
// match the button sizes
radButton2.Size = radButton1.Size;
}
If you're having trouble getting the correct syntax to access a given property, try setting it using the 
Hierarchy Editor dialog at design time and look at the generated code, i.e. Form1.Designer.cs. The code 
may be a little "wordy" compared with hand-written code but you can get a better look at how the 
hierarchy is accessed and what types are being used. 
RadControls for Winforms
127
RadControls for Winforms
VB.NET PDF - Annotate PDF Online with VB.NET HTML5 PDF Viewer
VB.NET PDF - Annotate PDF Online with VB.NET HTML5 PDF Viewer. Explanation about transparency. VB.NET HTML5 PDF Viewer: Annotate PDF Online. This
delete blank page in pdf online; delete pages from pdf file online
C# HTML5 PDF Viewer SDK to convert and export PDF document to
C# view PDF online, C# convert PDF to tiff, C# read PDF, C# convert PDF to text, C# extract PDF pages, C# comment annotate PDF, C# delete PDF pages, C# convert
delete blank pages in pdf; delete page from pdf file
Adding Elements to RadControls
Elements can be added to existing RadControls to produce unique display and behavior. The typical use would 
be to make some tweak in an existing control if the existing makeup of the control doesn't produce what you 
want to see.
This next example adds elements to a RadPanel. A StackLayoutPanel is added to the RadPanel's Children 
collection. The Orientation of the layout panel is Vertical, so that elements added to its Children collection will 
be displayed from top to bottom.  A label with a title "Safety Checklist" is added to the layout panel, then a 
series of "bullet points". Each bullet point is made up of its own StackLayoutPanel with the Orientation set to 
Horizontal so that the "bullet point" and text will be displayed left to right.
You can find the complete source for this project at:
\VS Projects\TPF\<VB>|CS>\AddingElements
[VB] Composing Elements
Private Sub Form1_Load(sender As Object, e As EventArgs)
' Create a stack panel to contain the title and bullet points
RadControls for Winforms
128
RadControls for Winforms
Dim layoutPanel As New StackLayoutPanel()
layoutPanel.Orientation = Orientation.Vertical
Dim label As New RadLabelElement()
' create the "title"
label.Text = "Safety Checklist"
label.Padding = New Padding(5, 10, 0, 0)
' add the title and bullet points
layoutPanel.Children.Add(label)
layoutPanel.Children.Add(GetBulletPoint("Smoke detectors"))
layoutPanel.Children.Add(GetBulletPoint("Ground-fault circuit interrupters"))
layoutPanel.Children.Add(GetBulletPoint("Fire retardant roofing materials"))
' add the layout panel element to the panel's children
radPanel1.RootElement.Children.Add(layoutPanel)
End Sub
Private Function GetBulletPoint(text As StringAs StackLayoutPanel
' create a layout panel for a single "bullet point"
Dim layoutPanel As New StackLayoutPanel()
layoutPanel.Orientation = Orientation.Horizontal
layoutPanel.Margin = New Padding(10, 10, 0, 0)
' add the "bullet point" graphic and add to the layout panel
Dim arrowPrimitive As New ArrowPrimitive()
arrowPrimitive.Direction = Telerik.WinControls.ArrowDirection.Right
arrowPrimitive.Margin = New Padding(0, 0, 5, 0)
arrowPrimitive.ForeColor = Color.Maroon
layoutPanel.Children.Add(arrowPrimitive)
' add the text for the bullet point and add to the layout panel
Dim textPrimitive As New TextPrimitive()
textPrimitive.Text = text
layoutPanel.Children.Add(textPrimitive)
Return layoutPanel
End Function
[C#] Composing Elements
private void Form1_Load(object sender, EventArgs e)
{
// Create a stack panel to contain the title and bullet points
StackLayoutPanel layoutPanel = new StackLayoutPanel();
layoutPanel.Orientation = Orientation.Vertical;
RadLabelElement label = new RadLabelElement();
// create the "title"
label.Text = "Safety Checklist";
label.Padding = new Padding(5, 10, 0, 0);
// add the title and bullet points
layoutPanel.Children.Add(label);
layoutPanel.Children.Add(GetBulletPoint("Smoke detectors"));
layoutPanel.Children.Add(GetBulletPoint("Ground-fault circuit interrupters"));
layoutPanel.Children.Add(GetBulletPoint("Fire retardant roofing materials"));
// add the layout panel element to the panel's children
radPanel1.RootElement.Children.Add(layoutPanel);
}
private StackLayoutPanel GetBulletPoint(string text)
{
// create a layout panel for a single "bullet point"
StackLayoutPanel layoutPanel = new StackLayoutPanel();
layoutPanel.Orientation = Orientation.Horizontal;
layoutPanel.Margin = new Padding(10, 10, 0, 0);
// add the "bullet point" graphic and add to the layout panel
RadControls for Winforms
129
RadControls for Winforms
Adding Controls to Elements
If you need to host an existing control where you would normally place a RadElement, you can do it using 
RadHostItem, a little adapter between standard Windows controls and the inner world of TPF elements. This 
assumes there are no elements that already fit the bill for what you want to do. Perhaps you have a unique 
control that would take some work to replicate using RadElements and simply want to add it to a 
RadControl. The general steps are:
Create an instance of the control. 
Create a RadHostItem and pass the control instance in the constructor. 
Add the RadHostItem to the Children collection of your control. 
Lets say we have a RadTabStrip or RadListBox and want to populate it's items with a standard Windows 
GroupBox. Look at the GetItemWithGroupBox method in the code below. We create the GroupBox control, 
create the RadHostItem and pass the GroupBox in the constructor, then add the RadHostItem to the list box 
item's children.
ArrowPrimitive arrowPrimitive = new ArrowPrimitive();
arrowPrimitive.Direction = Telerik.WinControls.ArrowDirection.Right;
arrowPrimitive.Margin = new Padding(0, 0, 5, 0);
arrowPrimitive.ForeColor = Color.Maroon;
layoutPanel.Children.Add(arrowPrimitive);
// add the text for the bullet point and add to the layout panel
TextPrimitive textPrimitive = new TextPrimitive();
textPrimitive.Text = text;
layoutPanel.Children.Add(textPrimitive);
return layoutPanel;
}
There are easier ways to get this particular task done; this is simply an example showing how you can mix-
and-match elements to build controls of arbitrary arrangement and complexity. The general rule is to look 
for the highest level control or element that will suit your "must haves". If you opt for lower-level control 
you can fine tune the results, but you will also have to manage interaction between elements and perform 
more extensive testing for unexpected behavior.
You can find the complete source for this project at:
\VS Projects\TPF\<VB|CS>AddingControlsToElements
[VB] Adding and Configuring RadHostItems
Private Sub RadForm1_Load(sender As Object, e As EventArgs)
radListBox1.Items.Add(GetItemWithGroupBox("Administrators"))
radListBox1.Items.Add(GetItemWithGroupBox("Users"))
radListBox1.Items.Add(GetItemWithGroupBox("Guests"))
End Sub
Function GetItemWithGroupBox(title As StringAs RadListBoxItem
' create and configure the groupbox
Dim groupBox As New GroupBox()
groupBox.BackColor = Color.Transparent
groupBox.ForeColor = Color.Maroon
groupBox.Text = title
' create the RadHostItem with the groupbox as hosted control
Dim host As New RadHostItem(groupBox)
' add host item to the list box item
Dim item As New RadListBoxItem(title)
RadControls for Winforms
130
RadControls for Winforms
Once the control is hosted, you can refer to it by accessing the RadHostItem's HostedControl property and 
casting it to be the appropriate control type. For example, if we add a SelectedIndexChanged event handler to 
the list box, we can find our way back to each GroupBox instance. From the selected RadListBoxItem you can 
get the first child (because we did an insert at the front of the item's Children collection, we can index into the 
first element) to get the RadHostItem. From there you get the HostedControl and cast it to be a GroupBox.
The running project looks something like this: 
item.Children.Insert(0, host)
item.MinSize = New Size(0, 100)
item.Padding = New Padding(10)
Return item
End Function
[C#] Adding and Configuring RadHostItems
private void RadForm1_Load(object sender, EventArgs e)
{
radListBox1.Items.Add(GetItemWithGroupBox("Administrators"));
radListBox1.Items.Add(GetItemWithGroupBox("Users"));
radListBox1.Items.Add(GetItemWithGroupBox("Guests"));
}
RadListBoxItem GetItemWithGroupBox(string title)
{
// create and configure the groupbox
GroupBox groupBox = new GroupBox();
groupBox.BackColor = Color.Transparent;
groupBox.ForeColor = Color.Maroon;
groupBox.Text = title;
// create the RadHostItem with the groupbox as hosted control
RadHostItem host = new RadHostItem(groupBox);
// add host item to the list box item
RadListBoxItem item = new RadListBoxItem(title);
item.Children.Insert(0, host);
item.MinSize = new Size(0, 100);
item.Padding = new Padding(10);
return item;
}
[VB] Accessing the Hosted Control
Private Sub radListBox1_SelectedIndexChanged(sender As Object, e As EventArgs)
Dim listBox As RadListBox = TryCast(sender, RadListBox)
Dim item As RadListBoxItem = TryCast(listBox.SelectedItem, RadListBoxItem)
Dim groupBox As GroupBox = TryCast((TryCast(item.Children(0), 
RadHostItem)).HostedControl, GroupBox)
lblItemSelected.Text = groupBox.Text
End Sub
[C#] Accessing the Hosted Control
private void radListBox1_SelectedIndexChanged(object sender, EventArgs e)
{
RadListBox listBox = sender as RadListBox;
RadListBoxItem item = listBox.SelectedItem as RadListBoxItem;
GroupBox groupBox = (item.Children[0] as RadHostItem).HostedControl as GroupBox;
lblItemSelected.Text = groupBox.Text;
}
RadControls for Winforms
131
RadControls for Winforms
Animation
You can animate aspects of RadElements based on a property change. The animation can be another property 
that is smoothly transitioned between states. The screenshot below shows the "FishEyeBar" project underway. 
When the mouse moves over an element, the element is scaled up to a larger size. As the mouse moves off the 
item, the item smoothly scales back down to its original size.
Examine the code for the FishEyeBar project. Most of the code we're interested in occurs in the 
WelcomeScreenBottom.cs user control.  The starting point is to define a descendant of 
PropertyChangedBehavior.  Notice that the constructor base() takes a reference to a RadProperty. This is the 
property that will trigger the behavior. Try changing this to a IsMouseDown property and the behavior will not 
happen on mouse over but only when you click the mouse button.
You can find the complete source for this project at:
\VS Projects\TPF\<VB|CS>\FishEyeBar
[VB] Inheriting from PropertyChangeBehavior
Public Class WelcomeScreenMouseOverBehavior
RadControls for Winforms
132
RadControls for Winforms
Documents you may be interested
Documents you may be interested