This is not a question, but a help for my future me!
When you load a layout your RadTitleElement miss events, you cannot directly set .Click event, for example, on the RadTitleElement object memory var.
You need to find out the element and set the event.
So the code below shows how to do it.
void LoadLayout(RadPanorama panorama, string userFileConfig)
{
panorama.LoadLayout(fileUserConfig);
Fire("radTileElement1").click += (ss,ee) => DoSomething();
Fire("myCustomElementName").click += DoSomething2();
//....
}
#if (DEBUG)
private string missingBlocks { get; set; } = "";
#endif
private RadTileElement Fire(string name)
{
for (var n = 0; n < radPanorama1.Groups.Count(); n++)
{
var grp = (TileGroupElement)radPanorama1.Groups[n];
foreach (RadTileElement item in grp.Items)
{
if (item.Name.IsEquals(name)) return item;
}
}
#if (DEBUG)
missingBlocks += ";" + name;
// This guide you if goes wrong any .Name property
System.Diagnostics.Debug.WriteLine(missingBlocks);
#endif
return new RadTileElement();
}
How use it?
Any were you like restore a layout:
LoadLayout(radPanorama1, mySavedLayoutFile);
#jefferson2020
Hello! I'm new to the panorama and didn't dive into the code yet, so I might ask some foolish question - sorry in advance.
Question 1. I see in the panorama demo that if the user drags and drop the tiles, changing their order and position, the rest of the tiles are automatically rearranged. Is this done in the demo code, or is it a method of the panorama?
Is it possible to rearrange automatically the tiles after changing the size of on of the tiles? (I saw a thread where it was said that we have to do it manually, but it was in 2014, so maybe...)
Question 2. Is it possible for the user to resize the tiles with the mouse - drag from the right bottom corner for example? I guess if it is not an option of the control, there are still some other possibilities-we can check MouseOver, see if the position of the mouse is at the corner of a tile, change the cursor to indicate this<->, manage mouse click etc

Greetings.
Using the code below, it is possible to set vertical group layout :
RadPanorama1.PanoramaElement.GroupLayout.Orientation = Orientation.Vertical
BUT,
what would be the usage as it disables the scroll ball. I found relevant threads, but It would be helpful for VB.NET developers if you just not provide solutions in C#, but also in VB.NET (I already know C# can be converted to VB.NET, but it isn't comfortable in many cases).
For instance, I edited the relevant thread to create custom Panoroma :
Imports Telerik.WinControlsImports Telerik.WinControls.LayoutsImports Telerik.WinControls.UIClass CustomPanorama Inherits RadPanorama Private vScroll As RadScrollBarElement Protected Overrides Sub CreateChildItems(ByVal parent As Telerik.WinControls.RadElement) MyBase.CreateChildItems(parent) Me.vScroll = New RadScrollBarElement() Me.vScroll.ScrollType = ScrollType.Vertical Me.vScroll.StretchHorizontally = False Me.vScroll.StretchVertically = True Me.vScroll.MinSize = New System.Drawing.Size(16, 0) Me.vScroll.Alignment = System.Drawing.ContentAlignment.TopRight Me.PanoramaElement.Children.Add(vScroll) AddHandler vScroll.ValueChanged, AddressOf vScroll_ValueChanged AddHandler PanoramaElement.GroupLayout.RadPropertyChanged, AddressOf GroupLayout_RadPropertyChanged AddHandler PanoramaElement.TileLayout.RadPropertyChanged, AddressOf GroupLayout_RadPropertyChanged Me.ScrollBarAlignment = HorizontalScrollAlignment.Bottom End Sub Private Sub GroupLayout_RadPropertyChanged(ByVal sender As Object, ByVal e As Telerik.WinControls.RadPropertyChangedEventArgs) If e.Equals(RadElement.BoundsProperty) AndAlso sender = Me.GetCurrentLayout() Then UpdateVScroll() End If End Sub Protected Overrides Sub OnSizeChanged(ByVal e As EventArgs) MyBase.OnSizeChanged(e) UpdateVScroll() End Sub Private Sub UpdateVScroll() vScroll.Maximum = Me.GetCurrentLayout().Size.Height vScroll.LargeChange = Math.Max(0, CInt((Me.Size.Height - Me.PanoramaElement.ScrollBar.Size.Height))) If vScroll.LargeChange >= vScroll.Maximum Then vScroll.Visibility = ElementVisibility.Hidden Else vScroll.Visibility = ElementVisibility.Visible End If If Me.PanoramaElement.ScrollBar.Visibility = ElementVisibility.Visible Then vScroll.Margin = New System.Windows.Forms.Padding(0, 0, 0, Me.PanoramaElement.ScrollBar.Size.Height) Else vScroll.Margin = New System.Windows.Forms.Padding(0) End If End Sub Private Sub vScroll_ValueChanged(ByVal sender As Object, ByVal e As EventArgs) Me.GetCurrentLayout().PositionOffset = New System.Drawing.SizeF(0, -Me.vScroll.Value) End Sub Private Function GetCurrentLayout() As LayoutPanel If Me.ShowGroups Then Return Me.PanoramaElement.GroupLayout End If Return Me.PanoramaElement.TileLayout End Function Public Overrides Property ThemeClassName As String Get Return GetType(RadPanorama).FullName End Get Set(ByVal value As String) MyBase.ThemeClassName = value End Set End PropertyEnd Class
But, in this way, we have to create all elements such as tiles programmatically, really difficult and annoying in comparison with visual creation.
How to enable vertical scrollbar for vertical Group Layout ?
Thanks in advance.

Greetings,
Using the Panorama control , it is possible to design panels similar to Windows start menu panel. But I It would be even better if there had been a fade-in effect for tiles when appearing for the first time. I attached a gif image that I recorded from my Windows 8.1 start menu panel to illustrate what I'm talking about.
P.S I tried making tiles invisible and then making them visible one by one , like every 10 milliseconds, through rows and columns of groups in the control. Not bad, but changing visibility this way isn't smooth as the fade-in effect .
Any trick ?
I have a couple questions regarding Panorama:
s it possible to change the scroll type from horizontal to vertical

Hello,
At this moment, when using a touchscreen, a pangesture on the scrollbar, that's on the bottom of the Panorama results in a pangesture event.
Is it possible that this pangesture ON THE SCROLLBAR controls the scrollbar?
(see video : http://www.soundware.nl/Data/20190103_161853.mp4)
The pangesture on the rest of the Panorama-control needs to be intact.
Best regards
Patrick Vossen

Hello,
I'm testing RadPanorama for Windows Forms
I love the zooming feature (although having the ability to set an initial zoom value depending on the screen resolution would make it better), however I can't find how to make the tile text bigger.
When I go to the tile's properties, then font and make the font bigger, it automatically changes back to 'Segoe UI Light, 16pt'.
I then tried doing the same on the TileGroupElement itself, but its font always automatically becomes 'Segoe UI Light, 20.25pt'
I finally tried to change the font of the RadPanorama as a whole, and although the value does change, it doesn't have any effect on the tiles.
So how do I go about doing that? Thank you in advance :)
Hello,
I have a custom RadTileElement where the ripple animation is enabled.
The animation works when clicking the tile element, but is it possible to raise/start the ripple animation from code?
This to draw the attention of the user to the tile element.
Grtz Patrick Vossen
Hello
I am hiding a group via code at runtime with
carers.Visibility = Telerik.WinControls.ElementVisibility.Hidden
however the gap stays there, is there a function to auto reorganize so the next group to the right takes its spot
(fills in the gap)
if not, can set there order via code, or delete the group completely
all at runtime
thanks

