Table of Contents

Telerik & Dev Notes

Telerik – Editors

* RadAutoCompleteBox – racb

http://docs.telerik.com/devtools/winforms/editors/autocompletebox/autocompletebox
http://www.telerik.com/community/forums/winforms/editors.aspx
Video: http://www.telerik.com/videos/winforms/getting-started-with-radautocompletebox-for-winforms

RadAutoCompleteBox allows the end-user to easily fill-in text thanks to auto-complete functionality and tokens of text. This behavior is similar to the “To” field of Outlook and Facebook where you are filling-in the recipients to which you are going to send a message.

A screenshot of a computer Description automatically generated

* RadBrowseEditor – rbe

https://docs.telerik.com/devtools/winforms/controls/editors/browseeditor/overview
http://www.telerik.com/community/forums/winforms/editors.aspx

Browse to specify a file or folder on disk.

### Take a look at this control set instead. File Dialogs, It looks like this maybe replaces the RadBrowseEditor? ###

It opens a FileOpen, File Save or Folder Selection dialog apparently without calling the Windows API.

RadBrowseEditor is a themable control which allows users to select a file or a directory from the file system or directly type the full path to it in the editor.

### Add the RadOpenFolderDialog to this list. I like it much better than the old FolderBrowseDialog. Also see it here, under the RadBrowseEditor. I’m not sure which of those 2 controls are the one to use now.

A screenshot of a computer Description automatically generated

A screenshot of a computer program Description automatically generated

A screenshot of a computer Description automatically generated

RadCalculatorDropDown – rcdd

http://docs.telerik.com/devtools/winforms/editors/calculatordropdown/calculatordropdown

RadCalculatorDropDown has a simple easy-to-use interface enabling the end user to perform all basic calculations such as addition, subtraction, multiplication, division as well as some more complicated ones – reciprocal, square root, negate.

A screenshot of a calculator Description automatically generated

RadColorBox – rcb

http://www.telerik.com/help/winforms/editors-color-box-overview.html
http://www.telerik.com/community/forums/winforms/editors.aspx

The main purpose of the control is to allow the user to select a color from a color dialog with preset colors or to type the color directly into the text field. The control then displays the color name if it is a named color or the RGB values of the selected color. A small rectangle filled with the selected color is displayed as well.

* RadDateTimePicker – rdtp

http://www.telerik.com/help/winforms/editors-datetimepicker-overview.html

http://www.telerik.com/community/forums/winforms/calendar-and-datetimepicker.aspx
VIDEO: Getting Started Video

RadDateTimePicker allows interactive selection of dates using a drop down calendar.

A calendar with green and white text Description automatically generated

Choose a date (optionally a time of day?)

* RadMaskedEditBox – rmeb

http://www.telerik.com/help/winforms/editors-maskededitbox-overview.html
http://www.telerik.com/community/forums/winforms/editors.aspx

RadMaskedEditBox is a themeable text box that formats and constrains text to a predefined pattern or a pattern you define. RadMaskedEditBox also handles globalization for date and time edits. Date and Time masks allow the user to navigate using the up and down arrow keys.

A screenshot of a computer Description automatically generated

The MaskType property defines what type of mask would be used in the masked box:

* RadPropertyGrid – rpg

http://www.telerik.com/help/winforms/propertygrid-overview.html
http://www.telerik.com/community/forums/winforms/property-grid.aspx
Video: http://www.telerik.com/videos/winforms/getting-started-with-telerik-radpropertygrid

Search/Filter PropertyGrid rows: http://docs.telerik.com/devtools/winforms/propertygrid/features/filtering.html

Use the Tasks button to access these properties:

Attach a RadPropertyGrid to an object and get a Visual Stuidio style property editor for the object.
radPropertyGrid1.SelectedObject = new PropertyGridElement(); // point to itself showing the PropertyGrid’s own properties
using Telerik.WinControls.UI; // required for ‘PropertyGridElement’

rpgControlProperties.SelectedObject = commandBarButton1; // Show the properties of a RadCommandBar button

The elements of the SelectedObject

Here’s some articles on using the RadPropertyGrid:

Force a RadPropertyGrid to update

radPropertyGrid.PropertyGridElement.PropertyTableElement.Update(PropertyGridTableElement.UpdateActions.Reset);

ToolTips on Value Column

Use the RadPropertyGrid.ToolTipTextNeeded event to specify the ToolTipText for the value column and set the ToolTip.AutoPopDelay.

private void radPropertyGrid1_ToolTipTextNeeded(object sender, Telerik.WinControls.ToolTipTextNeededEventArgs e)
{
  PropertyGridItemElement itemElement = sender as PropertyGridItemElement;
  if (itemElement!=null)
  {
    e.ToolTipText = itemElement.ValueElement.Text; 
    e.ToolTip.AutoPopDelay = 1000;
  }
}

RadRichTextBox – (deprecated)

http://www.telerik.com/help/winforms/richtextbox-overview.html
http://www.telerik.com/community/forums/winforms/richtextbox.aspx
Video: http://www.telerik.com/videos/winforms/getting-started-with-telerik-radrichtextbox

Use the RadRichTextEditor instead.

RadRichTextEditor - rrte

http://docs.telerik.com/devtools/winforms/richtexteditor/overview

RadRichTextEditor is a control that is able to display and edit rich-text content including formatted text arranged in pages, paragraphs, spans (runs), tables, etc.

A screenshot of a computer Description automatically generated

RadRichTextEditor allows you to edit text and apply rich formatting options, like:

Properties

RadSpellChecker – rsc

http://www.telerik.com/help/winforms/spellchecker-overview.html

RadSpellChecker enables developers to add multilingual spell checking capabilities to their Win Forms applications. The component is completely customizable and can be attached to any text-editing RadControl.

A screenshot of a computer Description automatically generated

* RadSpinEditor – rse

http://www.telerik.com/help/winforms/editors-spineditor-overview.html
http://www.telerik.com/community/forums/winforms/editors.aspx

RadSpinEditor is a themable alternative to the standard Windows Numeric Up Down control.

A white rectangle with black arrows Description automatically generated

* RadTextBox – rtxt

http://www.telerik.com/help/winforms/editors-textbox-overview.html
http://www.telerik.com/community/forums/winforms/editors.aspx

**RadTextBoxControl vs RadTextBox** - RadTextBox is a wrapper around the standard .NET TextBox control, while RadTextBoxControl is built entirely on top of Telerik Presentation Framework.

Textbox that observes Telerik Theme settings

A screenshot of a computer Description automatically generated

RadTextBoxControl – rtxtbc

http://www.telerik.com/help/winforms/editors-textboxcontrol-overview.html
http://www.telerik.com/community/forums/winforms/editors.aspx

**RadTextBoxControl vs RadTextBox** - RadTextBox is a wrapper around the standard .NET TextBox control, while RadTextBoxControl is built entirely on top of Telerik Presentation Framework.

RadTextBoxControl provides similar to the standard .NET Framework text box features. In addition it allows easy customizations and enhancements. It is generally used for editing text, although it can be used to display text, when in read-only mode. The control can display multiple lines, wrap text to the size of the control and perform text block formatting and replacement.

The control can display multiple lines, wrap text to the size of the control, add basic formatting, use themes, and the main differences with RadTextBox - can be transparent and use gradients.

* RadTimePicker – rtp

http://www.telerik.com/help/winforms/editors-timepicker-overview.html

http://tv.telerik.com/watch/winforms/getting-started-with-radtimepicker-for-winforms

http://www.telerik.com/community/forums/winforms/calendar-and-datetimepicker.aspx
Video: http://www.telerik.com/videos/winforms/getting-started-with-radtimepicker-for-winforms

RadTimePicker control allows the end user to enter a time value to the editable area of the control, or pick the time from the drop down by selecting both the hours and the minutes. The drop down by default contains RadClock on the left side and two tables on the right side – for picking hours and minutes respectively.

A screenshot of a clock Description automatically generated

Choose a time of day (not Date)

this.rtpStartTimeStd.Value = DateTime.Now;  // Set Start time to now
timepicker1.Culture = new CultureInfo(“en-gb”);  // set to Military time 

timepicker1.Culture = new CultureInfo(“en-us”);  // set to Standard (AM/PM) time

RadTrackBar – rtb

http://www.telerik.com/help/winforms/track-and-status-controls-trackbar-overview.html

http://www.telerik.com/community/forums/winforms/track-and-status.aspx

RadTrackBar, sometimes called a slider control, can be used for navigating a large amount of information or for visually adjusting a numeric setting.

A diagram of a program Description automatically generated with medium confidence

There’s a bug that causes the bar to truncate if it’s physically shorter than a % of the total.
rtbPlaybackSpeed.TrackBarElement.MinSize = new System.Drawing.Size(0, 0); // Resolve by setting the MinSize of the TrackBarElement

# RadPopupEditor – rpe

http://docs.telerik.com/devtools/winforms/editors/popupeditor/popupeditor

Drop down a form where you can display/edit various controls/values configurable at design time.

RadPopupEditor allows you to show any predefined or custom controls in its popup. By default the control should be associated with a RadPopupContainer. RadPoupContainer on the other hand allows you to build your layout at design time. The controls added to the container will be shown in the popup window when the popup is opened.

A screenshot of a computer Description automatically generated

From the Demo app:

A screenshot of a computer Description automatically generated

RadControls – Buttons

* RadButton – rbtn

http://www.telerik.com/help/winforms/buttons-button-overview.html

http://www.telerik.com/community/forums/winforms/buttons.aspx

// Toggle the ‘Image’ on button click.
   // First add the 2 images as Project Resources (under Project Properties)
   // Next create a property flag in the class to show the state
 
   namespace LS.Common.Log.Presentation
   {
     public partial class ucLogViewer : UserControl
     {
       public bool LogPaused { get; set; } %%//%% Play/Pause button state flag property
 
       public ucLogViewer()
       {
         InitializeComponent();
       // Code continues…
// Now create a click event handler to swap the image and update the property flag
private void rcbbtnPlayPauseLog_Click(object sender, EventArgs e) {
  if (LogPaused == true) {
     rcbbtnPlayPauseLog.Image = LS.Common.Log.Presentation.Properties.Resources.Play_24x24;
     LogPaused = false;
   }
   else {
     rcbbtnPlayPauseLog.Image = LS.Common.Log.Presentation.Properties.Resources.Pause_24x24;
     LogPaused = true;
   }
 }
 
// NOTE: You could have used a bool variable (rather than a property) and called some method(s) from the click event.

Show only an icon w/o button frame, like this 3rd button:
A close-up of a computer screen Description automatically generated

radButton3.ButtonElement.ShowBorder = false;
radButton3.BackColor = System.Drawing.Color.Transparent;
radButton3.DisplayStyle = Telerik.WinControls.DisplayStyle.Image;

Toggle between 2 image (icon) values

if (rbtnPlayPauseToggle.Text == "play") // use the .Text property as a flag
{
  rbtnPlayPauseToggle.Image = Properties.Resources.MediaPause_40; // .MediaPause_40 is ‘MediaPause_40.png’ imported to the app repository
  rbtnPlayPauseToggle.Text = "pause";
}
else
{
  rbtnPlayPauseToggle.Image = Properties.Resources.MediaPlay_40; // toggle to ‘MediaPlay_40.png’ image
  rbtnPlayPauseToggle.Text = "play";
}
  rbtnPlayPauseToggle.Refresh();

* RadCheckBox – rchk

http://www.telerik.com/help/winforms/buttons-checkbox-overview.html

http://www.telerik.com/community/forums/winforms/buttons.aspx
http://docs.telerik.com/devtools/winforms/buttons/checkbox/handling-radcheckbox-states
http://docs.telerik.com/devtools/winforms/buttons/checkbox/databinding-radcheckbox

RadCheckBox is designed to provide an interface element that can represent an On or Off state using a check mark.

RadCheckBox supports three states. This is controlled by the IsThreeState property. If it is set to false, the ToggleState property, which determines the current state of the check mark, can be On or Off . Otherwise, it can be set to On , Off , or Indeterminate .

CheckBox that observes Telerik Theme settings

* RadDropDownButton – rddbtn

http://www.telerik.com/help/winforms/buttons-dropdownbutton-overview.html

Each of the items of RadDropDownButton can be set to perform an action when it is clicked. In addition, the items can contain other items, allowing you to create any hierarchy that fits your needs of sub-items.

A green and black text on a green box Description automatically generated

RadSplitButton – rsbtn

http://www.telerik.com/help/winforms/buttons-splitbutton-overview.html
http://www.telerik.com/community/forums/winforms/buttons.aspx
http://docs.telerik.com/devtools/winforms/buttons/splitbutton/working-with-radsplitbutton-items

RadSplitButton provides a menu-like interface contained within a button that can be placed anywhere on a form.

A screenshot of a computer Description automatically generated

RadSplitButton looks the same, and works nearly the same, as RadDropDownButton, but RadSplitButton has a DefaultItem property to specify the item whose Click event should be triggered when the button is clicked. The functionality of RadSplitButton is “split” between the button itself and the dropdown menu.

* RadRadioButton – rrdo

http://www.telerik.com/help/winforms/buttons-radiobutton-overview.html
http://www.telerik.com/community/forums/winforms/buttons.aspx

A group of flags with text Description automatically generated

Put multiple in a RadGroupBox

Properties

‘IsChecked’ = True, button is filled in

RadRepeatButton – rrbtn

http://www.telerik.com/help/winforms/buttons-repeatbutton-overview.html
http://www.telerik.com/community/forums/winforms/buttons.aspx
http://docs.telerik.com/devtools/winforms/buttons/repeatbutton/working-with-radrepeatbutton

RadRepeatButton provides press-and-hold functionality. While the mouse button is pressed down, the ButtonClick event fires at a pre-determined interval. RadRepeatButton is an ideal UI element for allowing users to control an increasing or decreasing value, such as volume or brightness.

A screenshot of a computer Description automatically generated

RadToggleButton – rtbtn

http://www.telerik.com/help/winforms/buttons-togglebutton-overview.html

http://docs.telerik.com/devtools/winforms/buttons/togglebutton/handling-radtogglebutton-states

http://www.telerik.com/community/forums/winforms/buttons.aspx

RadToggleButton is designed to manage states on your form. It shares many features with the RadCheckBox, but provides a different visual effect than the standard check mark.

A screenshot of a computer error Description automatically generated

To wrap the text label, 'AutoSize' = False, 'TextWrap' = True, adjust 'Size' as required.

RadToggleSwitch – rts

http://docs.telerik.com/devtools/winforms/buttons/toggleswitch/toggleswitch

RadToggleSwitch is a control designed to represent two states: e.g. true/false, On/Off, etc.

A screenshot of a computer error Description automatically generated

RadControls – Menus & Toolbars

http://www.telerik.com/help/winforms/menus-menu-overview.html

RadApplicationMenu – ram

http://www.telerik.com/community/forums/winforms/menus.aspx

RadApplicationMenu is the Telerik counterpart of the application menu that displays controls used to perform actions on entire documents and forms, such as Save and Print. It also provides a list of recent documents, access to form options, and the ability to exit the form or application.

A screenshot of a computer Description automatically generated A screenshot of a computer Description automatically generated

See RadRibbonBar for more property info.

RadContextMenu – rcm

http://www.telerik.com/community/forums/winforms/menus.aspx

To implement context menus use RadContextMenu in your application. RadContextMenu is a non-visual component that sits in the component tray located below the form design surface. RadContextMenu, like RadMenu, can be themed and has an items collection that accepts RadMenuItem, RadMenuComboBoxItem, RadMenuSeparatorItem and RadMenuContextItem.

A screenshot of a calendar Description automatically generated

Create a right click (context) menu.

Add to a form then link to a control via the control’s ‘RadContextMenu’ property.

Create a Systray app menu by binding this to a Windows NotifyIcon (niMain).

RadContextMenuItem – rcmi

These are the items that appear in the right click menu.

Use an item as an information display only. You don’t want the highlight on mousehover or the click event to fire, but you don’t want the greyed out text of a disabled control.

rmiLastSync.Enabled = false; // disable highlight on mousehover and click event
rmiLastSync.UseDefaultDisabledPaint = false; // control is disabled but don't show as grey text

RadContextMenuManager – rcmm

__http:%%//%%www.telerik.com/help/winforms/menus-context-menu-assign-radcontextmenu-to-telerik-and-non-telerik-controls.html__

You can assign RadContextMenu to Telerik and non-Telerik controls. This can be achieved by making use of RadContextMenuManager component. This component will add a RadContextMenu property to all controls on the form. Then, you should simply set a RadContextMenu instance to the RadContextMenu property.

* RadCommandBar – rcb

http://www.telerik.com/help/winforms/commandbar-overview.html

http://docs.telerik.com/devtools/winforms/commandbar/design-time

http://www.telerik.com/community/forums/winforms/commandbar.aspx

Video: Working with RadCommandBar
Save and Load Layout to XML file

RadCommandBar is a fully themeable tool strip that provides unprecedented flexibility. More than just a collection of buttons, RadCommandBar hosts any RadControl, including combo boxes, text boxes, split buttons, drop-down buttons, toggle buttons and more. CommandBar can be moved, rearranged and resized at run time for easy end-user customization.

A screenshot of a computer Description automatically generated

Basically a Toolbar. Can add buttons, dropdowns, etc.

The structure works like this:

Select a CommandBarRowElement then click the Task button to ‘Edit Strips’. You can reorder the Strips within a row from this dialog. Choose a Strip to edit, then use the ‘Items’ property to add/edit items. Or can select a Strip directly from the Row and click the Tasks buton to edit only the Items for that Strip. Set the Strip ‘DisplayName’ so it’s visible from the Overflow button dialog at runtime. Set ‘StretchHorizontally’ to make a Strip fill the available width on the Row.

RadCommandBar allows the user to show/hide, reorder items and rearrange strip elements on different rows at runtime. ### We need to build a common lib class that saves/restores those customizations. The Save/Load layout functionality gives your applications the opportunity to preserve user settings concerning position, visibility and orientation.

http://www.telerik.com/help/winforms/commandbar-save-and-load-layout.html

Roll up empty space left behind from visible/collapsed ToolStrips
https://www.telerik.com/forums/problem-in-stripelement-visible-collapsed

https://www.telerik.com/forums/order-of-strips-to-display

Add Resources to a Solution (Icons, Graphics, Files, etc.)

Here’s my updated video on how to add Icon Graphics to a Solution
A screenshot of a computer Description automatically generated

The default icons are all small (16×16) but if you use a bigger icon (32×32 or 64×64) the RadCommandBar will expand as required. You can also force it in code. For example show 32×32 image in CommandBarButton like this:
1. Use image with size 32×32.
2. Set the MinSize if you want to have space between image and borders of the button.

this.commandBarButton3.Image = global::CommandBarButtonDefaultSize.Properties.Resources.Button_Next_icon32x32;\\
this.commandBarButton3.MinSize = new System.Drawing.Size(40, 40);

You can add the items by clicking the down arrow on the RCB, but it’s easier to add and organize if you open the RCB ‘Collection Editor’. You can select multiple items to set common properties.

Set the width to match the container

???

Show an icon and text on a control (button, combo, etc) including set button size for text wrap

NOTE: You can <Ctrl> click all the buttons to set these properties at once.

Note: You must use a CommandBarLabel with a CommandBarHostItem. The built in ‘Text’ value won’t display.

// RadDateTimePicker and RadTimePicker 'CommandBarHostItem's on a RadCommandBar
   // Stick this right after “InitializeComponent();” on the form or UC.
   SetupHostedItems(); // setup the RadDateTimePicker and RadTimePicker 'CommandBarHostItem's on the RadCommandBar
 
//Follow up (what’s a better way to say these follow after the function that include the Inititalize()?) with these:
 
private void SetupHostedItems() // setup the 'CommandBarHostItem's on the RadCommandBar
{
  rcbhiStartDate.HostedItem = GenerateDateTimePicker("rdtpStartDate"); // Start Date
  rcbhiStartTime.HostedItem = GenerateTimePicker("rtpStartTime"); // Start Time
  rcbhiEndDate.HostedItem = GenerateDateTimePicker("rdtpEndDate"); // End Date 
  rcbhiEndTime.HostedItem = GenerateTimePicker("rtpEndTime"); // End Time
}
 
private RadDateTimePickerElement GenerateDateTimePicker(string Name) // 'CommandBarHostItem' on the RadCommandBar
{
  RadDateTimePickerElement rdtp = new RadDateTimePickerElement();
  rdtp.AutoSizeMode = Telerik.WinControls.RadAutoSizeMode.FitToAvailableSize;
  rdtp.Name = Name;
  rdtp.MinSize = new System.Drawing.Size(100, 20);
  rdtp.Format = DateTimePickerFormat.Short;
  return rdtp;
}
 
private RadTimePickerElement GenerateTimePicker(string Name) // 'CommandBarHostItem' on the RadCommandBar
{
  RadTimePickerElement rtp = new RadTimePickerElement();
  rtp.AutoSizeMode = Telerik.WinControls.RadAutoSizeMode.FitToAvailableSize;
  rtp.Name = Name;
  rtp.MinSize = new System.Drawing.Size(100, 20);
  return rtp;
}

Checkbox as CommandBarHostItem https://www.telerik.com/forums/checkbox-in-radcommandbar
Create a RadCommandBar HostedItem in the IDE, then create a RadCheckBox in code and link it to the HostedItem.

// Create a RadCheckBox ‘rchkOnlyFavoriteColumns’ and link it to the CommandBar HostedItem ‘rcbhiOnlyFavoriteColumns’
RadCheckBoxElement rchkOnlyFavoriteColumns = new RadCheckBoxElement();
rchkOnlyFavoriteColumns.MinSize = new System.Drawing.Size(19, 0); // Set the size here to match the HostedItem from the IDE
rcbhiOnlyFavoriteColumns.HostedItem = rchkOnlyFavoriteColumns;

RadCommandBarOverflowButton - The overflow button automatically displays items that don't have the real estate to display by default. The end user can also customize the toolstrip by adding and removing buttons.

If you Dock a panel (or TableLayoutPanel) control to the form and it appears behind the RadCommandBar, collapse the panel in the Document Outline, then drag it above the RadCommandBar like this:
C:\Users\rgray\AppData\Local\Temp\SNAGHTML4d8bb2c2.PNG

* RadMenu – rm

http://www.telerik.com/help/winforms/menus-menu-overview.html
__http:%%//%%www.telerik.com/community/forums/winforms/menus.aspx__

RadMenu enables you to integrate attractive and flexible menus on Forms within your Windows applications.

A screenshot of a computer Description automatically generated A screenshot of a computer Description automatically generated

A screenshot of a program Description automatically generated A screenshot of a computer Description automatically generated

A screenshot of a computer Description automatically generated

Other controls, like the top of a RadPanel, can appear behind a RadMenu. I’m not sure how to force them both to the same layer, but you can use the Margin – Top to push the hidden control down. Look for a better solution. The best thing to do is to add the panel after the RadMenu. Also look to my instructions on RadCommandBar to deal with controls behind this one. It’s about setting the order in the IDE Document Outline.

RadMenuItem – rmi

RadMenuButton – rmb

Menu child items are under the RadMenu.Items (Collection). Then select a child and look to its RadMenu.Items (Collection) for the grandchildren items.

If you Dock a panel (or TableLayoutPanel) control to the form and it appears behind the RadMenu, collapse the panel in the Document Outline, then drag it above the RadMenu like this:
C:\Users\rgray\AppData\Local\Temp\SNAGHTML221ed26e.PNG

Standard Legality Software Help Menu Setup

  1. Add a radMenu control to rfrmMain and name it ‘radMenu’
  2. Create these RadMenuItems (Add to ‘ActiveItems’ under top level menu items, and ‘Items’ for sub level menu items)
    private Telerik.WinControls.UI.RadMenuItem rmiHelp;
    private Telerik.WinControls.UI.RadMenuItem rmiHelpOnline;
    private Telerik.WinControls.UI.RadMenuItem rmiLegalitySoftwareWebsite;
    private Telerik.WinControls.UI.RadMenuItem rmiLicenseRegistration;
    private Telerik.WinControls.UI.RadMenuItem rmiAbout;

    Note you might also want to include these items:

    private Telerik.WinControls.UI.RadMenuItem rmiFile;
    private Telerik.WinControls.UI.RadMenuItem rmiNew;
    private Telerik.WinControls.UI.RadMenuItem rmiOpenSettings;
    private Telerik.WinControls.UI.RadMenuItem rmiSaveSettings;
    private Telerik.WinControls.UI.RadMenuItem rmiSaveSettingsAs;
    // Add a separator then a Recent Items here – See File Renamer example code example
    private Telerik.WinControls.UI.RadMenuItem rmiExit;
  3. Click “TELERIK | RadControls for WinForms | Add RadAboutBox”. Name the form “rfrmRadAboutBox” and click <Add>.
  4. Add this to the top of rfrmMain.cs
    using System.Diagnostics; // required by ‘Process’ to launch external apps (like the browser)
  5. Use this code to rfrmMain.cs to handle the Help Menu clicks
    // Help Menu =========================================================================
    private void rmiHelpOnline_Click(object sender, EventArgs e)
    {
      //TODO: FutureFeature - Implement online help system (wiki)
      Process.Start("http://www.legalitysoftware.com"); // launch the Legality Software site
    }
     
    private void rmiLegalitySoftwareWebsite_Click(object sender, EventArgs e)
    {
      Process.Start("http:%%//%%www.legalitysoftware.com"); // launch the Legality Software site
    }
     
    private void rmiLicenseRegistration_Click(object sender, EventArgs e)
    {
      //TODO: FutureFeature - Implement licensing
    }
     
    private void rmiCheckForUpdates_Click(object sender, EventArgs e)
    {
      //TODO: Larry - Wire up the Update feature
    }
     
    private void rmiAbout_Click(object sender, EventArgs e)
    {
      using (var rfrmAboutBox = new rfrmRadAboutBox()) // create an instance of the form 
      { 
        rfrmAboutBox.ShowDialog(this); // then show/opens it
      }
    }

* RadRibbonBar – rrb

http://www.telerik.com/help/winforms/ribbonbar-overview.html
http://www.telerik.com/community/forums/winforms/ribbonbar.aspx
Video: Overview Video

With the RadRibbonBar control you can build user interfaces similar to those used in Microsoft Office.

A screenshot of a computer Description automatically generated

Consider adding a RadRibbonForm to the Solution rather than adding a RadRibbonBar to a regular RadForm.

RadRibbonTab – rrbt

RadRibbonBarGroup – rrbg

RadRibbonBarButtonGroup – rrbbg

RadButtonElement - rbe - Position text to BottomCenter, enable TextWrap and config an icon

Hide elements of the Ribbon Bar

Add the following code right under ‘InitializeComponent();’ in frmMain() (or whatever the form is called).

// Stick this right after “InitializeComponent();” on the form
// Hide the AppButton (Office Start button or 'File' tab) on the RadRibbonBar
radRibbonBar1.RibbonBarElement.ApplicationButtonElement.Visibility = Telerik.WinControls.ElementVisibility.Hidden;
 
// Hide the QAT (Quick Access Toolbar) on the RadRibbonBar
radRibbonBar1.RibbonBarElement.QuickAccessToolBar.Visibility = Telerik.WinControls.ElementVisibility.Hidden;
 
//Hide Title Bar - collapse all 3 elements to hide this bar
richTextEditorRibbonBar.RibbonBarElement.QuickAccessToolBar.Visibility = ElementVisibility.Collapsed;
richTextEditorRibbonBar.RibbonBarElement.ApplicationButtonElement.Visibility = ElementVisibility.Collapsed;
richTextEditorRibbonBar.RibbonBarElement.RibbonCaption.Visibility = ElementVisibility.Collapsed;
 
// Hide any RibbonBar tab with 'Name' = "Hidden" or where 'Text' contains "Hidden" (just the tab, not content)
foreach (Telerik.WinControls.UI.RibbonTab item in radRibbonBar1.CommandTabs) {
  if (item.Text.ToLower().Contains("hidden") == true || item.Name.ToLower().Contains("hidden") == true)
    item.Visibility = Telerik.WinControls.ElementVisibility.Hidden; // sometimes ‘Collapsed’
}
 
// Shift Tab Groups to the left when the AppButton (Office Start button or 'File' tab) is collapsed
radRibbonBar1.RibbonBarElement.ApplicationButtonElement.Visibility = Telerik.WinControls.ElementVisibility.Collapsed;
Padding p = radRibbonBar1.RibbonBarElement.TabStripElement.ItemContainer.Padding;
radRibbonBar1.RibbonBarElement.TabStripElement.ItemContainer.Padding = new Padding(0, p.Top, p.Right, p.Bottom);
 
// Hide the ‘ribbonTab1’ tab on the RadRibbonBar  
ribbonTab1.Visibility = Telerik.WinControls.ElementVisibility.Hidden; // sometimes ‘Collapsed’
 
// Hide the Caret button in the upper right that collapses the RibbonBar
this.radRibbonBar1.RibbonBarElement.ExpandButton.Visibility = Telerik.WinControls.ElementVisibility.Collapsed;
 
// Select the 1st tab [0] on the RadRibbonBar by default
((Telerik.WinControls.UI.RibbonTab)radRibbonBar1.CommandTabs[0]).IsSelected = true;

Use the ‘Document Outline’ view (<Ctrl>+W, U) to manage a RadRibbonForm.

Managing & Reordering RibbonBar Groups

NOTE: Reordering CommandTabs in the wizard doesn’t seem to work. You can use this code instead:

 //The RibbonGroups 'rrbctArchives' and 'rrbctNotes' should be in the 1st and 2nd positions from the left. Telerik support ticket: 1453535 
this.richTextEditorRibbonBar.CommandTabs.Remove(this.rrbctArchives);
this.richTextEditorRibbonBar.CommandTabs.Insert(0this.rrbctArchives);
richTextEditorRibbonBar.CommandTabs.Remove(this.rrbctNotes);
richTextEditorRibbonBar.CommandTabs.Insert(1this.rrbctNotes);

Set default selected CommandTab

//Set Default Startup Tab

FIX

Add RadDateTimePicker to RadRibbonBar

This control is not available in the RadRibbonBar Items collection, but you can add it in code.

We wanted 2 date controls followed by a dropdown list of predefined date ranges. Add the dropdown list in the designer, then insert the 2 date controls above it (top down) in code.

A screenshot of a computer Description automatically generated A screenshot of a computer Description automatically generated

public frmMain()
{
  InitializeComponent();
  SetupRibbonFilters();// add non-standard controls to RadRibbonBar
}
 
void SetupRibbonFilters()
{
  AddDateTimeControl("rdtpStartDate");
  AddDateTimeControl("rdtpEndDate");
}
 
void AddDateTimeControl(string controlName)
{
  RadDateTimePicker dtPicker = new RadDateTimePicker();
  dtPicker.Name = controlName;
  //dtPicker.ThemeName = "Office2007Blue";  // inherits the form theme if not specified
  RadHostItem hostItem = new RadHostItem(dtPicker); // placeholder
  hostItem.MinSize = new Size(13525);
  hostItem.MaxSize = new Size(15025);
  //rrbbgDateFilter.Items.Add(hostItem);  // add new control to the specified RibbonGroup
  rrbbgDateFilter.Items.Insert(rrbbgDateFilter.Items.Count - 1, hostItem); // insert new control from top down
}

Add CheckedDropDownList to RadRibbonBar

This control is not available in the RadRibbonBar Items collection, but you can add it in code.

A screenshot of a computer Description automatically generated

public frmMain()
{
  InitializeComponent();
  SetupRibbonFilters();  // add non-standard controls to RadRibbonBar\
}
 
void SetupRibbonFilters()
{
  AddOtherPartyDropDown();
}
void AddOtherPartyDropDown()
{
  Dictionary<intstring> other_parties = new Dictionary<intstring>();  // create sample data
  other_parties.Add(0"Joe Bob");
  other_parties.Add(1"Jim Bob");
  other_parties.Add(2"Bob Bob");
  other_parties.Add(3"Leroy Bob");
  AddCheckedDropDownList("rcddOtherParty""key""value", other_parties);\\
}
 
void AddCheckedDropDownList(string controlName, string dataMember, string valueMember, object dataSource)
{
  RadCheckedDropDownList rcddList = new RadCheckedDropDownList();
  rcddList.Name = controlName;
  rcddList.DataMember = dataMember;
  rcddList.ValueMember = valueMember;
  rcddList.DataSource = dataSource;
  RadHostItem hostItem = new RadHostItem(rcddList);  // placeholder
  hostItem.MinSize = new Size(15025);
  hostItem.MaxSize = new Size(15025);
  rbgOtherParty.Items.Add(hostItem);  // add new control to the specified RibbonGroup
}

RadPanorama

http://docs.telerik.com/devtools/winforms/panorama/overview

RadPanorama is a control that displays elements of type RadTileElement in a mosaic manner. This control is inspired by the Metro Start Menu screen of Windows 8.

A screenshot of a computer Description automatically generated

RadShortcut (Hotkeys)

http://docs.telerik.com/devtools/winforms/shortcuts/shortcuts-overview

Almost each application uses the so-called “Shortcuts” – a keyboard combination that triggers a specific action. For a valid shortcut is considered any keyboard combination where a Modifier Key (Ctrl, Alt and Shift or a combination of these) is down and other key(s) is pressed. This semantic is available out-of-the-box in our framework and allows you to seamlessly plug any valid keys combination as an action accelerator. Supported are also the so-called multiple keys shortcuts where the Keys member of each shortcut may be more than one key – e.g. Ctrl + A, S is recognized by the framework. Shortcuts without modifier keys are also supported, but they should be used with caution, since they may be in conflict with other controls which intercept keyboard input.

RadControls Misc

RadBreadCrumb – rbc

RadCarousel

http://www.telerik.com/help/winforms/carousel-overview.html
http://www.telerik.com/support/code-library/winforms/carousel
Video: http://www.telerik.com/videos/winforms/overview-of-radcarousel-for-winforms

RadClock – rclock

http://www.telerik.com/help/winforms/clock-overview.html

http://www.telerik.com/community/forums/winforms/calendar-and-datetimepicker.aspx
VIDEO: http://tv.telerik.com/watch/winforms/getting-started-with-radtimepicker-for-winforms

NOTE: The control cannot be resized since it uses a bitmap for its background.

A clock with a black hand Description automatically generated

RadDesktopAlert – rda

http://www.telerik.com/help/winforms/desktopalert-overview.html

http://www.telerik.com/community/forums/winforms/desktop-alert.aspx
http://www.telerik.com/help/winforms/desktopalert-getting-started.html
http://tv.telerik.com/watch/winforms/getting-started-with-raddesktopalert - Video- how to get started with RadDesktopAlert.
http://www.telerik.com/help/winforms/allmembers_t_telerik_wincontrols_ui_desktopalertmanager.html
VIDEO: http://www.telerik.com/videos/winforms/getting-started-with-raddesktopalert

RadDesktopAlert component displays a small pop-up window on the screen to notify the user that a specific event has occurred in the application.

A white and green background with black text Description automatically generated

My sample project: \\192.168.93.1\KB_MiM\Telerik\LS.TelerikSystrayApp

Popup notification similar to Outlook’s you have a new email Notify (Notification) popup. You can drag it around the screen. There are three buttons in the upper right to close, pin it to the screen and display a list of options.

For multi-monitor systems use the SetActiveScreen() method of the DesktopAlertManager class to set the screen where alerts display at ‘ScreenPosition’.

You can display multiple alert instances on the screen and the DesktopAlertManager will calculate the alerts’ location so that they do not overlap. Alerts are stacked on the screen in the order of their appearance. When an alert is closed, all related visible alerts are automatically relocated to utilize the screen real estate. To show multiple desktop alerts you must create a new instance for every alert. To replace an alert dispose the instance and create another new one.

int i ; // create multiple instances of the
for (i = 0; i <= 2; i++)
{
  RadDesktopAlert a = new RadDesktopAlert();
  a.CaptionText = i.ToString();
  a.Show();
}

RadDesktopAllert does not support auto-size mode. You must set the size of the control so your contents will fit.

Marcel tried this sample code in eTMsync but it didn’t work for him so he ended up writing his own resize code.

http://www.telerik.com/forums/desktop-alert-not-resizing-accordingly-to-the-contenttext-set

It offers some “HTML-like” formatting but does not support “&nbsp;”. Here is a list of supported tags and expressions.

Here’s a code example to make a clickable hyperlink in the Alert Content.

You can add a button (or other element) to any control, including an Alert. Here’s how to add a button:

RadButtonElement element = new RadButtonElement();
element.Text = "Button";
element.MaxSize = new Size(20, 20);
this.radDesktopAlert1.Popup.AlertElement.ContentElement.Children.Add(element);

Here’s Color Change examples by choosing an alternate themes or using a customized theme from Visual Style Builder.

You can Preview the Alert in the IDE from the control Smart Tag in the Component Bin.

this.radDesktopAlert1.FixedSize = new Size(200, 200);

RadHScrollBar – rhsb

See: RadVScrollBar

+-* RadLabel – rlbl

http://www.telerik.com/help/winforms/panels-and-labels-label-overview.html

http://www.telerik.com/community/forums/winforms/panels-and-labels.aspx

Telerik themeable label with HTML-like formatting capability. Also see this video.

A black text on a white background Description automatically generated

NOTE: Our design policy it to only change the control name from default if we will programmatically change the text.

Custom Text Formatting via MarkupEditor

http://www.telerik.com/help/winforms/panels-and-labels-label-html-like-text-formatting.html

Set these RadLabel properties and double click the label to stub out a click event.

Instead of LinkLabel see the <Links> button on the ‘MarkupEditor’ behind the ‘RadLabel.Text’ property dropdown and open locations without additional code.

<a href="http:%%//%%www.legalitysoftware.com/">Legality Software</a>

<a href=“http://www.legalitysoftware.com/”><span style=“color: #d86040”>Legality Software</span></a> - orange font in Wizards (NOTE: Set ‘BackColor’ = 225, 228, 240 to match wizard form)

<a href="http:%%//%%support.lawtopia.net/">View log files</a>
<a href="file:%%//%%/C:/DevGit">View log files</a>
Click this <a href="file:%%//%%/C:/DevGit">View log files</a> to open Windows Explorer

Here’s the HTML for our company blurb for wizard pages, etc. (Set ‘TextAlignment’ = MiddleCenter):

<p><span style="font-size: 10pt; color: #00467f"><em>Legality Software provides packaged software products and custom software solutions for law firms. Our solutions typically enhance the capabilities of, or fix problems with, the tools you use in your firm today. We also help firms automate difficult, time consuming or repetitive tasks. Legality products and solutions are designed to solve your problems so you can achieve your goals. </em></span></p><p><span style="color: #00467f"><span style="font-size: 10pt"><em>If you have a specific problem we may already have a solution. <br /></em></span><span style="font-size: 10pt"><em>If not we can build one for you.</em></span></span></p><p><span style="font-size: 13px"><span style="font-size: 10pt"><br /><span style="color: #00467f">Visit </span></span><a href="http:%%//%%www.legalitysoftware.com/"><span style="font-size: 10pt">Legality Software</span></a><span style="font-size: 10pt; color: #00467f"> to learn more.</span></span></p>

A screenshot of a software Description automatically generated

### I DON'T KNOW HOW TO CENTER TEXT IN A MULTI-LINE LABEL

Dynamically Add Text to a Label

### grab code from TMFU

Dynamically Replace some Placeholder Text in a Label

### grab code from TMFU & ask Larry how he worked out the issue with the Placeholder Text is not there for the 2nd replace

RadPrintDocument – rpd

RadProgressBar – rpb

http://www.telerik.com/help/winforms/track-and-status-controls-progressbar-overview.html

http://www.telerik.com/community/forums/winforms/track-and-status.aspx

RadProgressBar is designed to display progress information to the user during a long-running operation.

A screenshot of a progress bar Description automatically generated

### Need an example

RadWaitingBar – rwb

http://www.telerik.com/help/winforms/track-and-status-controls-waitingbar-overview.html

http://www.telerik.com/community/forums/winforms/track-and-status.aspx
http://docs.telerik.com/devtools/winforms/track-and-status-controls/waitingbar/waitingbar
http://docs.telerik.com/devtools/winforms/track-and-status-controls/waitingbar/properties-and-methods

Like a progress bar but with no start or end. It just shows activity.

A green and white striped object Description automatically generated

Properties

The ‘WaitingBarIndicatorElement’ is the sliding part, which has:
NOTE: A RadWaitingBar may (does) have more than 1 ‘WaitingBarIndicatorElement’, named ‘WaitingBarIndicatorElement1’ and ‘WaitingBarIndicatorElement2’ so if you use ‘ShouldPaint’, besure to change both instances.

Methods

### Add an example here from HLS PdfParser

RadRating

http://docs.telerik.com/devtools/winforms/track-and-status-controls/rating/rating

RadRating is a flexible UI component that allows users to place their rating by selecting from a finite number of items (stars, diamonds and hearts). The developers can fully customize the control by configuring its orientation, rating precision, direction etc.

A screenshot of a computer Description automatically generated

RadRotator – rrot

http://docs.telerik.com/devtools/winforms/rotator/overview

RadRotator is a multipurpose component for content rotation and personalization. Highly customizable, it delivers high interactivity and user involvement. You can display a series of images, web URLs or any collection of rad elements. Animation between frames can be opaque or transparent and the movement can be in any direction. You can adjust the level of granularity and interval between frames.

A screenshot of a computer Description automatically generated

RadTitleBar – rtb

http://www.telerik.com/help/winforms/forms-and-dialogs-radtitlebar-overview.html

http://www.telerik.com/community/forums/winforms/forms-and-dialogs.aspx

RadTitleBar control is used in forms and provides functionality for dragging, minimizing, maximizing and closing the form. This control is internally used by RadForm.

To include a title bar with help, maximize, minimize and close button functionality simply drag it from the toolbox on the desired form. This control is great addition to the ShapedForm.

To customize the help, minimize, maximize and close buttons, use the RadTitleBar.TitleBarElement's HelpButton, MinimizeButton, MaximizeButton and CloseButton objects. Each button is a RadButtonElement type that include properties to control text, image, and layout.

A green line on a white background Description automatically generated

Note: By default, the HelpButton is not shown. It is necessary to set its Visibility property to ElementVisibility.Visible in order to be displayed.

RadVScrollBar – rvsb

http://www.telerik.com/help/winforms/track-and-status-controls-scrollbar-overview.html

http://www.telerik.com/community/forums/winforms/track-and-status.aspx

http://www.telerik.com/help/winforms/track-and-status-controls-scrollbar-getting-started.html

Using Telerik scrollbars is a bit more intricate compared to using the standard scrollbars because you have to handle scroll event manually. Add a RadPanel to your form then add a RadVScrollbar in the panel and dock it to the Right. Add another RadPanel inside the 1st RadPanel and set its height to the total height you want to be available upon scrolling (taller than the 1st RadPanel). This value can be statics e.g. 1000 pixels or dynamic determined by the scrollable content. Now add controls (the controls which are to be scrolled) to the second RadPanel.

A white background with black squares Description automatically generated

Then subscribe to the Scroll event of the vertical scrollbar and assign its negated value to the Top property of the second RadPanel:

void radVScrollBar1_Scroll(object sender, ScrollEventArgs e)
{
 this.radPanel2.Top = -this.radVScrollBar1.Value;
}

Finally, set the Maximum property of the scrollbar to reflect the size of the scrollable height which is the total height of the scrollable content minus the visible height. For the example of this section in particular, that is the height of the second panel minus the height of the first panel.

this.radVScrollBar1.Maximum = this.radPanel2.Size.Height - this.radPanel1.Size.Height;

* RadWizard – rw

http://www.telerik.com/help/winforms/wizard-overview.html
http://www.telerik.com/community/forums/winforms/wizard.aspx
Design Time Settings http://www.telerik.com/help/winforms/wizard-design-time.html

Wizard dialog with multiple pages and <Back><Next> buttons.

A screenshot of a computer Description automatically generated

Properties

Quick Tasks Button

Another option is to click page name in 'Pages' Collection Editor to jump/view.

### I’m not sure how to change the “Help” hyperlink in the lower left corner.

Contains the following elements:

Events - help you to follow the state of the control at run time, implement custom pages sequence and page processing validation.
http://www.telerik.com/help/winforms/wizard-events.html

Subscribe to the Next event this.radWizard1.Next += new WizardCancelEventHandler(radWizard1_Next); Handle the Next event

private void radWizard1_Next(object sender, WizardCancelEventArgs e)
{
   if (this.radWizard1.SelectedPage == this.radWizard1.Pages[1]) %%//%% Check if this is the desired page 
   {
     // Do some validation here
     e.Cancel = true; %%//%% If the validation does not pass
     this.radWizard1.SelectedPage = this.radWizard1.Pages[0]; %%//%% Could return to 1<sup>st</sup> page
     // Or you could show some message to the user
   }
}

Custom Page Branching Sample Project

Custom CommandArea Controls like Navigation Buttons

Create multiple Welcome or Completion pages

RadWizardPage - rwp

Only change from default if we will programmatically change the text)