Completed
Last Updated: 06 Jun 2019 13:31 by ADMIN
Release R2 2019 SP1 (LIB 2019.2.610)
How to reproduce: check the attached project

Workaround: resize the size of the hosting RadPanel
private void radCollapsiblePanel_Expanding(object sender, CancelEventArgs e)
{
    this.radPanel1.Size = new Size(this.radPanel1.Size.Width, this.radPanel1.Size.Height - 1);
}

private void radCollapsiblePanel_Expanded(object sender, EventArgs e)
{
    this.radPanel1.Size = new Size(this.radPanel1.Size.Width, this.radPanel1.Size.Height + 1);
}

Completed
Last Updated: 12 Jun 2019 08:18 by ADMIN
Release R2 2019 SP1
To reproduce:
- Use the attached project.
- Resize the panel to the left.
- You will notice that the borders are cut off.

Second scenario: refer to the 1016234GridInCollapsiblePanelVS2010.zip
RadCollapsiblePanel1.ExpandDirection = Telerik.WinControls.UI.RadDirection.Right
RadSplitContainer1.SplitPanels("SplitPanel2").SizeInfo.SizeMode = Telerik.WinControls.UI.Docking.SplitPanelSizeMode.Absolute
RadSplitContainer1.SplitPanels("SplitPanel2").SizeInfo.AbsoluteSize = New System.Drawing.Size(637, 522)

Workaround: manually update the collapsible panel`s size in the SplitterMoved event
public WorkCenterScheduleAndStatusControl()
{
    InitializeComponent();

    this.radSplitContainer1.SplitterMoved += RadSplitContainer1_SplitterMoved;
}

private void RadSplitContainer1_SplitterMoved(object sender, SplitterEventArgs e)
{
    this.radCollapsiblePanel1.Size = new Size(this.radCollapsiblePanel1.Size.Width, this.radCollapsiblePanel1.Size.Height - 1);
    this.radCollapsiblePanel1.Size = new Size(this.radCollapsiblePanel1.Width, this.radCollapsiblePanel1.Size.Height + 1);
}

Completed
Last Updated: 16 Sep 2015 08:05 by ADMIN
To reproduce: add RadCollapsiblePanel to RadLayoutControl, run it and collapse RadCollapsiblePanel => the expand/collapse button will get hidden

Workaround:

 public SampleForm()
        {
            InitializeComponent();

            radCollapsiblePanel1.AutoSize = false;
            radCollapsiblePanel1.Collapsed += radCollapsiblePanel1_Collapsed;
            radCollapsiblePanel1.Expanding += radCollapsiblePanel1_Expanding;
            radCollapsiblePanel1.Expanded += radCollapsiblePanel1_Expanded;

        }

        void radCollapsiblePanel1_Expanded(object sender, EventArgs e)
        {
            UpdateLayout();
        }

        private void UpdateLayout()
        {
            radLayoutControl1.RootElement.InvalidateMeasure(true);
            radLayoutControl1.RootElement.UpdateLayout();

            radCollapsiblePanel1.RootElement.InvalidateMeasure(true);
            radCollapsiblePanel1.RootElement.UpdateLayout();
        }

        void radCollapsiblePanel1_Expanding(object sender, CancelEventArgs e)
        {

            radLayoutControl1.FindItemByControl(radCollapsiblePanel1).MaxSize = new Size(0, 0);
            radLayoutControl1.FindItemByControl(radCollapsiblePanel1).MaxSize = new Size(0, 0);

            UpdateLayout();
        }

        void radCollapsiblePanel1_Collapsed(object sender, EventArgs e)
        {
            radLayoutControl1.FindItemByControl(radCollapsiblePanel1).MaxSize = new Size(31, 0);
            radLayoutControl1.FindItemByControl(radCollapsiblePanel1).MinSize = new Size(31, 0);

            UpdateLayout();
        }
Completed
Last Updated: 23 Jul 2015 10:16 by ADMIN
To reproduce:
- Drop RadPopUpContainer from the toolbox on the windows form. Save the form.
- Change the AllowAutomaticScrollToControl property value.
- Save the form.


Workaround:
Set the property in code:
RadScrollablePanel1.AllowAutomaticScrollToControl = false;
Unplanned
Last Updated: 30 Mar 2016 13:07 by ADMIN
To reproduce:
- Add a scrollable panel wit other controls in a form.
- Show the form using the ShowDialog method.
- Scroll to the bottom the close and show the form again 
- You will notice that the scrollbar is not shown and the controls at the top are not visible.

Workaround:
Protected Overrides Sub OnClosing(e As System.ComponentModel.CancelEventArgs)
    MyBase.OnClosing(e)
    RadScrollablePanel1.VerticalScrollbar.Value = 0
End Sub
Completed
Last Updated: 12 Jun 2019 08:17 by ADMIN
Release R2 2019 SP1
To reproduce:
- Add to collapsible panels to a form.
- Dock the first to the top and set the Dock property of the second to Fill.
- Set the ExpandDirection of the second to Up.
- Start the application and collapse and then expand the second panel.
- You will notice that the header button is no longer visible.

Workaround:
void radCollapsiblePanel1_Expanded(object sender, EventArgs e)
{
    radCollapsiblePanel2.CollapsiblePanelElement.InvalidateMeasure(true);
}
Completed
Last Updated: 13 Jul 2015 07:35 by ADMIN
To reproduce:
- Set the Localizable property of the form to true.
- Change the header text of the collapsible panel.
Completed
Last Updated: 16 Jun 2015 06:29 by ADMIN
To reproduce:
radRadioButton1.Text = "<html><strong>Test</strong><strong> Test</strong></html>";
radRadioButton1.Enabled = false;
Completed
Last Updated: 07 Jun 2021 16:19 by ADMIN
Release R2 2021 SP1
If you add a RadCollapsiblePanel to a form in design time, then add some child controls in its control container, then open the Document Outline window, you will see that the child controls are not visible in the Document Outline.

Workaround: There is a workaround which involves creating an inherited RadCollapsiblePanel and assigning it with a custom designer:

[Designer(typeof(MyCollapsiblePanelDesigner))]
class MyCollapsiblePanel : RadCollapsiblePanel
{
    public override string ThemeClassName
    {
        get
        {
            return typeof(RadCollapsiblePanel).FullName;
        }
        set
        {
            base.ThemeClassName = value;
        }
    }
}
 
class MyCollapsiblePanelDesigner : RadControlDesignerLite
{
    public override void Initialize(System.ComponentModel.IComponent component)
    {
        base.Initialize(component);
 
        this.EnableDesignMode((this.Control as RadCollapsiblePanel).ControlsContainer, "ControlsContainer");
        this.EnableDesignMode((this.Control as RadCollapsiblePanel).PanelContainer, "PanelContainer");
    }
 
    public override ControlDesigner InternalControlDesigner(int internalControlIndex)
    {
        return this.DesignerHost.GetDesigner((this.Component as RadCollapsiblePanel).PanelContainer) as ControlDesigner;
    }
 
    public override int NumberOfInternalControlDesigners()
    {
        return 1;
    }
 
    protected override RadControlDesignerLiteActionList CreateActionList()
    {
        return new RadCollapsiblePanelActionList(this);
    }
}

Note that you would need to add references to the System.Design and Telerik.WinControls.UI.Design assemblies in order for the workaround to build. After you build it successfully, you can use the MyCollapsiblePanel component from your toolbox and you will be able to see the child controls in the document outline.
Completed
Last Updated: 05 Jul 2016 11:45 by ADMIN
Sometimes when custom theme is used exception is thrown.

Workaround:
Switch to control default before switching to custom theme.
Unplanned
Last Updated: 30 Mar 2016 13:06 by ADMIN
How to reproduce:
 this.radScrollablePanel1.PanelElement.BorderThickness = new Padding(0);

Workaround: in order to hide the border of the RadScrollablePanel.PanelElement its Visiblity needs to be set to Hidden or Collapsed
this.radScrollablePanel1.PanelElement.Border.Visibility = Telerik.WinControls.ElementVisibility.Hidden;
Completed
Last Updated: 06 Jun 2019 13:30 by ADMIN
Release R2 2019 SP1 (LIB 2019.2.610)
To reproduce:
- Add a collapsible panel to ToolWindow.
- Collapse the panel and redock the tool window.
- The panel cannot be expanded any more.

Workaround:
List<Rectangle> list;
void radDock1_DockStateChanging(object sender, Telerik.WinControls.UI.Docking.DockStateChangingEventArgs e)
{
    list = new List<Rectangle>();
    foreach (var item in e.NewWindow.Controls)
    {
        if (item is RadCollapsiblePanel)
        {
            list.Add(((RadCollapsiblePanel)item).OwnerBoundsCache);
        }
    }
}

void radDock1_DockStateChanged(object sender, Telerik.WinControls.UI.Docking.DockWindowEventArgs e)
{
    int count = 0;
    foreach (var item in e.DockWindow.Controls)
    {
        if (item is RadCollapsiblePanel)
        {
            ((RadCollapsiblePanel)item).OwnerBoundsCache = list[count++];
        }
    }
}

Unplanned
Last Updated: 29 Mar 2016 11:28 by ADMIN
To reproduce:
- Put  grid and collapsible panel to a form.
- Set the Dock of the grid to fill.
- Set the Dock of the panel to top.
- Expand the panel, you will notice that the panel is drawn over the grid.

Workaround:
 
public RadForm1()
{
    InitializeComponent();
    radGridView1.Anchor = AnchorStyles.None;
    radCollapsiblePanel1.Dock = DockStyle.Top;
    radCollapsiblePanel1.EnableAnimation = false;

    radCollapsiblePanel1.Expanded += radCollapsiblePanel1_Expanded;
    radCollapsiblePanel1.Collapsed += radCollapsiblePanel1_Collapsed;

    gridSmallsize = new Size(this.Width - 10, this.Height - 190);
    gridLargeSize = new Size(this.Width - 10, this.Height - 60);
}

Size gridSmallsize;
Size gridLargeSize;

void radCollapsiblePanel1_Collapsed(object sender, EventArgs e)
{
    radGridView1.Size = gridLargeSize;
    radGridView1.Location = new Point(0, 30);
}

void radCollapsiblePanel1_Expanded(object sender, EventArgs e)
{
    radGridView1.Size = gridSmallsize;
    radGridView1.Location = new Point(0, 160);
}
Unplanned
Last Updated: 02 Feb 2017 11:31 by ADMIN
How to reproduce:
 CollapsiblePanelHeaderElement headerElement = this.radCollapsiblePanel1.CollapsiblePanelElement.HeaderElement;
RadTextBoxElement txtBox = new RadTextBoxElement();
headerElement.Children.Add(txtBox);

Workaround:
use RadTextBoxControlElement
Completed
Last Updated: 07 May 2015 10:45 by ADMIN
To reproduce:
radCollapsiblePanel1.CollapsiblePanelElement.HeaderElement.HeaderButtonElement.MinSize = new Size(100, 100);

Workaround:

 //resize the button
                this.menue.CollapsiblePanelElement.HeaderElement.MinSize = new Size(0, 50);
                this.menue.CollapsiblePanelElement.HeaderElement.HeaderButtonElement.MinSize = new Size(50, 50);
                this.menue.CollapsiblePanelElement.HeaderElement.HeaderButtonElement.MaxSize = Size.Empty;
                //refresh the control
                this.menue.EnableAnimation = false;
                this.menue.IsExpanded = !this.menue.IsExpanded;
                this.menue.IsExpanded = !this.menue.IsExpanded;
                this.menue.EnableAnimation = true;
Unplanned
Last Updated: 22 Sep 2017 12:27 by ADMIN

To reproduce: add a RadCollapsiblePanel and insert several controls at run time with specifying the location and size of the inner controls. Set the ContentSizingMode property to CollapsiblePanelContentSizingMode.FitToContentHeight | CollapsiblePanelContentSizingMode.FitToContentWidth. When you run the application you will notice that the inner controls are cut off and the panel is not resized according to its content.

Workaround:

Before:

After:

        public RadForm2()
        {
            InitializeComponent(); 

            this.radCollapsiblePanel1.ContentSizingMode = CollapsiblePanelContentSizingMode.None;
        }

        private void RadForm2_Load(object sender, EventArgs e)
        { 
            SizeF fillElementSize = this.radCollapsiblePanel1.Size;
            int maxY = int.MinValue;
            int maxX = int.MinValue;
            int maxControlWidth = int.MinValue;
            int maxControlHeight = int.MinValue;
            bool fitToHeight = true;
            bool fitToWidth = true;

            Padding panelContainerPadding = this.radCollapsiblePanel1.ControlsContainer.PanelContainer.Padding;
            foreach (Control control in this.radCollapsiblePanel1.ControlsContainer.PanelContainer.Controls)
            {
                if (fitToHeight)
                {
                    maxY = Math.Max(maxY, control.Bounds.Location.Y + control.Bounds.Size.Height + control.Margin.Bottom + panelContainerPadding.Bottom +
                                          this.radCollapsiblePanel1.ControlsContainer.VerticalScrollbar.Value);
                    maxControlWidth = Math.Max(maxControlWidth, control.Width);
                }

                if (fitToWidth)
                {
                    maxX = Math.Max(maxX, control.Bounds.Location.X + control.Bounds.Size.Width + control.Margin.Right + panelContainerPadding.Right +
                                          this.radCollapsiblePanel1.ControlsContainer.HorizontalScrollbar.Value);
                    maxControlHeight = Math.Max(maxControlHeight, control.Height);
                }
            }

            if (fitToHeight)
            {
                bool horizontalScrollbarNeeded = fillElementSize.Width <= maxY + maxControlWidth;
                if (horizontalScrollbarNeeded)
                {
                    this.radCollapsiblePanel1.ControlsContainer.HorizontalScrollBarState = ScrollState.AlwaysHide;
                }
                else
                {
                    this.radCollapsiblePanel1.ControlsContainer.HorizontalScrollBarState = ScrollState.AutoHide;
                }

                fillElementSize.Height = maxY;
            }

            if (fitToWidth)
            {
                bool verticalScrollbarNeeded = fillElementSize.Height <= maxX + maxControlHeight;
                if (verticalScrollbarNeeded)
                {
                    this.radCollapsiblePanel1.ControlsContainer.VerticalScrollBarState = ScrollState.AlwaysHide;
                }
                else
                {
                    this.radCollapsiblePanel1.ControlsContainer.VerticalScrollBarState = ScrollState.AutoHide;
                }

                fillElementSize.Width = maxX;
            }
            fillElementSize.Height += this.radCollapsiblePanel1.CollapsiblePanelElement.HeaderElement.Size.Height + 5;
             
            this.radCollapsiblePanel1.MinimumSize = this.radCollapsiblePanel1.MaximumSize = this.radCollapsiblePanel1.Size = fillElementSize.ToSize();
        }

Declined
Last Updated: 09 Apr 2015 10:48 by ADMIN
DECLINED: caused by the fact the form has been edited under different DPI settings.
Workaround: specify the MinimumSize property at run time.
Declined
Last Updated: 06 Apr 2016 15:23 by ADMIN
To reproduce:

public Form1()
{
    InitializeComponent();

    for (int i = 0; i < 15; i++)
    {
        RadButton btn = new RadButton();
        btn.Text = "Item" + i;
        btn.Dock = DockStyle.Bottom;
        this.radCollapsiblePanel1.PanelContainer.Controls.Add(btn);
    }
}

Please refer to the attached screenshot.
Unplanned
Last Updated: 29 Mar 2016 11:08 by ADMIN
To reproduce: 
1. Add a RadSplitContainer with two split panels.
2. Add a RadCollapsiblePanel to the left split panel and set the RadCollapsiblePanel.Dock property to Fill.
3. Add a RadGridView inside the RadCollapsiblePanel  and set the RadGridView.Dock property to Fill.
4. Populate the grid with data.
5. Run the application and move the splitter to increase the RadCollapsiblePanel's size. The RadGridView is resized correctly.
6. Move the splitter to shrink the RadCollapsiblePanel. As a result the grid is not resized correctly. 

Workaround:

Subscribe to the RadSplitContainer.SplitterMoved event and use the  following code:

this.RadCollapsiblePanel1.EnableAnimation = false;
this.RadCollapsiblePanel1.IsExpanded = !this.RadCollapsiblePanel1.IsExpanded;
this.RadCollapsiblePanel1.IsExpanded = !this.RadCollapsiblePanel1.IsExpanded;
this.RadCollapsiblePanel1.EnableAnimation = true;
Completed
Last Updated: 29 Jan 2015 11:04 by ADMIN
To reproduce:
var stackPanel = new StackLayoutElement { Orientation = Orientation.Vertical };
stackPanel.Children.Add(new TextPrimitive { Text = "Demo" });
 stackPanel.Children.Add(new TextPrimitive { Text = "Demo" });
Panel.PanelElement.Children.Add(stackPanel);
Panel.AutoSize = true; // <= false works fine

Workaund:
- Put the panel in a control:
public class MyControl : RadControl
{
    protected override void CreateChildItems(RadElement parent)
    {
        base.CreateChildItems(parent);
        
        var stackPanel = new StackLayoutElement { Orientation = Orientation.Vertical };
        stackPanel.Children.Add(new TextPrimitive { Text = "Demo" });
        stackPanel.Children.Add(new TextPrimitive { Text = "Demo" });

        parent.Children.Add(stackPanel);
    }

    protected override RootRadElement CreateRootElement()
    {
        RootRadElement root = base.CreateRootElement();
        root.BackColor = Color.Transparent;

        return root;
    }
}