When you increase the SmallTickFrequency and use the TrackBarSnapModes.SnapToTicks, moving the thumb with the mouse should snap to the visible ticks.
How to reproduce 1. Drag a RadTrackBar from the toolbox 2. Set the Maximum property, e.g. to 100, set the Minimum property, e.g. to 50 3. Close and reopen the designer, you will notice that the Minimum property of the control is not the expected value of 50, although it has been properly serialized in the designer file. Workaround: set the Minimum property in the Load event of the form
To reproduce:
private void RadForm3_Shown(object sender, EventArgs e)
{
Telerik.WinControls.UI.RadWaitingBar waitbar = new Telerik.WinControls.UI.RadWaitingBar();
pnlCenter.Enabled = false;
waitbar.AssociatedControl = pnlCenter;
waitbar.StartWaiting();
}
Workaround:
Do not disable the control while using the waiting bar
How to reproduce: check the attached project and uncomment the commented line in the designer file
Workaround: use the attached custom theme
To reproduce: - Add waiting bar to a user control. - Try setting the assoitad control in the smart tag. Workaround: - Set it in code.
This functionality is applicable to the controls that support search functionality like RadRichTextEditor, RadGridView etc.
To reproduce:
private void radButton1_Click(object sender, EventArgs e)
{
radTrackBar1.Maximum = 100;
radTrackBar1.Value = 200;
}
To reproduce: - Set the mode and add ranges from the properties window. - The ranges are not added to the track bar Workaround: - Use the smart tag or add the ranges in code.
To reproduce:
private void radButton1_Click(object sender, EventArgs e)
{
radTrackBar1.Minimum = -64000;
radTrackBar1.Maximum = 64000;
}
Case thread with suggestion for workaround: http://www.telerik.com/community/forums/track-bar-takes-5-to-10-minutes-to-initialize
How to reproduce:
partial class Form2
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.radTrackBar1 = new Telerik.WinControls.UI.RadTrackBar();
((System.ComponentModel.ISupportInitialize)(this.radTrackBar1)).BeginInit();
this.SuspendLayout();
//
// radTrackBar1
//
this.radTrackBar1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.radTrackBar1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(233)))), ((int)(((byte)(240)))), ((int)(((byte)(249)))));
this.radTrackBar1.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.radTrackBar1.LabelStyle = Telerik.WinControls.UI.TrackBarLabelStyle.BottomRight;
this.radTrackBar1.LargeChange = 5;
this.radTrackBar1.LargeTickFrequency = 139;
this.radTrackBar1.Location = new System.Drawing.Point(36, 69);
this.radTrackBar1.Maximum = 140F;
this.radTrackBar1.Minimum = 1F;
this.radTrackBar1.Name = "rTrackBar1";
this.radTrackBar1.Size = new System.Drawing.Size(243, 33);
this.radTrackBar1.SmallTickFrequency = 5;
this.radTrackBar1.SnapMode = Telerik.WinControls.UI.TrackBarSnapModes.None;
this.radTrackBar1.TabIndex = 0;
this.radTrackBar1.Text = "rTrackBar1";
this.radTrackBar1.ThemeName = "ControlDefault";
this.radTrackBar1.TickStyle = Telerik.WinControls.Enumerations.TickStyles.None;
this.radTrackBar1.Value = 80F;
((Telerik.WinControls.UI.RadTrackBarElement)(this.radTrackBar1.GetChildAt(0))).MinSize = new System.Drawing.Size(100, 0);
((Telerik.WinControls.UI.TrackBarBodyElement)(this.radTrackBar1.GetChildAt(0).GetChildAt(1))).Margin = new System.Windows.Forms.Padding(7, 0, 7, 0);
((Telerik.WinControls.UI.TrackBarScaleContainerElement)(this.radTrackBar1.GetChildAt(0).GetChildAt(1).GetChildAt(0))).Orientation = System.Windows.Forms.Orientation.Vertical;
((Telerik.WinControls.UI.TrackBarScaleElement)(this.radTrackBar1.GetChildAt(0).GetChildAt(1).GetChildAt(0).GetChildAt(2))).Orientation = System.Windows.Forms.Orientation.Vertical;
((Telerik.WinControls.UI.TrackBarScaleElement)(this.radTrackBar1.GetChildAt(0).GetChildAt(1).GetChildAt(0).GetChildAt(2))).StretchVertically = false;
((Telerik.WinControls.UI.TrackBarLabelContainerElement)(this.radTrackBar1.GetChildAt(0).GetChildAt(1).GetChildAt(0).GetChildAt(2).GetChildAt(1))).StretchVertically = false;
((Telerik.WinControls.UI.TrackBarLabelElement)(this.radTrackBar1.GetChildAt(0).GetChildAt(1).GetChildAt(0).GetChildAt(2).GetChildAt(1).GetChildAt(0))).Text = "Lo";
((Telerik.WinControls.UI.TrackBarLabelElement)(this.radTrackBar1.GetChildAt(0).GetChildAt(1).GetChildAt(0).GetChildAt(2).GetChildAt(1).GetChildAt(1))).Text = "Hi";
//
// Form2
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(822, 515);
this.Controls.Add(this.radTrackBar1);
this.Name = "Form2";
this.Text = "Form2";
((System.ComponentModel.ISupportInitialize)(this.radTrackBar1)).EndInit();
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private Telerik.WinControls.UI.RadTrackBar radTrackBar1;
}
Workaround: remove setting of the text from the designer file to the Shown event of the form
public partial class Form2 : Form
{
public Form2()
{
InitializeComponent();
}
protected override void OnShown(EventArgs e)
{
base.OnShown(e);
((Telerik.WinControls.UI.TrackBarLabelElement)(this.radTrackBar1.GetChildAt(0).GetChildAt(1).GetChildAt(0).GetChildAt(2).GetChildAt(1).GetChildAt(0))).Text = "Lo";
((Telerik.WinControls.UI.TrackBarLabelElement)(this.radTrackBar1.GetChildAt(0).GetChildAt(1).GetChildAt(0).GetChildAt(2).GetChildAt(1).GetChildAt(1))).Text = "Hi";
}
}
The LargeChange property sets the change in value that one click of the mouse outside of the slider makes. Let's say that the position of your thumb is at the beginning of the RadTrackBar (at position 0), the value of this property is 5 and you click on tick number 14. The thumb will reposition itself to tick number 5, following the step determined by the LargeChange property. However, if the LargeChange has value 0, the thumb will move to position 14. It is necessary to be added another property to control the step when changing the value when using the left/right buttons, e.g. SmallChange.
How to reproduce: check project and video Workaround: use a custom RadTrackBar control as per the attached project
To reproduce: - Add RadTrackbar to a form and set its minimum and maximum to negative values. - Start the application, the maximum is reset to 1. Workaround: Set the maximum at runtime.
To reproduce: radTrackBar1.SmallTickFrequency = 10; radTrackBar1.TickStyle = TickStyles.None; radTrackBar1.SnapMode = TrackBarSnapModes.None; The user is not allowed to move the slider at all. If you set the Minimum property to 0 and the Maximum to 100, you will be able to slide to the right a little bit. Workaround: use TickStyles.Both
#1 Scenario: Drag and drop the RadTrackbar to form. Set the Orientation to Vertical. Run the project and you will see that control is not visible
public Form1()
{
InitializeComponent();
this.radTrackBar1.Orientation = Orientation.Vertical;
}
#2 Scenario: Drag and drop the RadTrackbar to form. Set the Orientation to Vertical. Run the project and you will see that control is cut off
private void Form1_Load(object sender, EventArgs e)
{
this.radTrackBar1.Orientation = Orientation.Vertical;
}