I am creating an app that utilizes the RadPanorama tool. In the options tile, the user has the option to select what tiles they would like to see and what tiles that they would like to get rid of. However, when the user selects a tile to hide, the Rad Panorama leaves an empty space where that tile originally was. I would like the app to fill any blank spaces that might be created by the user in a tile row. I was wondering if the Rad Panorama had the functionality to move all the tiles back to the original start position (Row 0, Column 0) so that there are no awkward spaces when a tile is hidden?
Thanks,
Derek O.
21 Answers, 1 is accepted
Thank you for writing.
Currently, there is no such functionality in RadPanorama. In this case you have to iterate over all visible elements and set their Row and Column properties manually. Please refer to the following code snippet:
radTileElement2.Visibility = Telerik.WinControls.ElementVisibility.Collapsed
int
col = 0;
int
row = 0;
foreach
(RadTileElement item
in
radPanorama1.Items)
{
if
(item.Visibility != Telerik.WinControls.ElementVisibility.Collapsed)
{
item.Column = col++;
item.Row = row;
}
}
I hope this information helps. Should you have any other questions, I will be glad to assist you.
Regards,
Dimitar
Telerik
Learn what features your users use (or don't use) in your application. Know your audience. Target it better. Develop wisely.
Sign up for Free application insights >>
What if the Tile is on different Groups?
I want to hide tiles in first group, how should I set the second group to fill the gap that the hidden tile used to fill ?
Regards,
Daniel
Thank you for writing back.
In this case you should manually transfer the items form the second group to the first one. Then you can just rearrange the items in the second group and no empty columns will remain:
private
void
radButton1_Click(
object
sender, EventArgs e)
{
radTileElement2.Visibility = Telerik.WinControls.ElementVisibility.Collapsed;
int
col = 0;
int
itemsTotransfer = tileGroupElement1.Items.Count;
foreach
(RadTileElement item
in
tileGroupElement1.Items)
{
if
(item.Visibility != Telerik.WinControls.ElementVisibility.Collapsed)
{
item.Column = col++;
itemsTotransfer--;
}
Console.WriteLine(item.Column);
}
for
(
int
i = 0; i < itemsTotransfer; i++)
{
var tempItem = tileGroupElement2.Items[i];
tileGroupElement2.Items.Remove(tempItem);
tileGroupElement1.Items.Add(tempItem);
}
for
(
int
i = 0; i < tileGroupElement2.Items.Count; i++)
{
((RadTileElement)tileGroupElement2.Items[i]).Column = i;
}
}
Please let me know if there is something else I can help you with.
Regards,
Dimitar
Telerik
Thank you for writing.
As I have mentioned in my first post this functionality does not comes out of the box and should be manually implemented. We do provide the API to rearrange the tiles as per your requirement. Even in Windows there are a cases where if you hide an item an empty space will remain and it is not clear how the gap should be filled (see attached image). So it depends on you how this should behave and how the items will be rearranged. Please note that the user can rearrange the tiles and he/she can fill any gaps manually.
If you have any questions, please do not hesitate to contact us.
Dimitar
Telerik
Check out the Telerik Platform - the only platform that combines a rich set of UI tools with powerful cloud services to develop web, hybrid and native mobile apps.
I am also currently developing a small application for my business.
The objective and create a customized desktop for my users.
I try coupling a desktop tile mode dynamically displaying information from a MSSQL Server database.
Would you have a source code to help me out?
I thank you in advance for your help.
Regards.
Alexandre
alexandre.schouvert@gmail.com
Thank you for writing.
RadPanorama does not provide any data binding functionality. The idea of the control is to display a menu like in Windows 8. This is why you should manually create the tiles and add them to RadPanorama.
I hope this information helps.
Regards,
Dimitar
Telerik
Do you implement in the near future in this module can create a connection between Panoama module and Ms-Sql?
If so, have you any idea of the targeted quarter?
Best regards
Thank you for writing back.
Currently, we do not have any plans to implement this functionality. If we receive more request for this we will consider to implement it.
If you have any questions, please do not hesitate to contact us.
Regards,
Dimitar
Telerik
Hi Dimitar,
I have been using the RadPanorama component for a start-menu for an application i am trying to create, but i am having an issue trying to save the tiles position once the user has moved them and rearranged them to their liking. I'm not sure if this can be done but i though i might ask.
Regards,
Cooper
We have a feature request for this. You can track its progress, subscribe for status changes and add your comment to it here. Please note that there is a sample project that shows how you can implement this attached to one of the comments.
I hope this will be useful.
Regards,
Dimitar
Progress Telerik
Hi Dimitar,
Wow,thanks for the speedy reply. I have had a look and it is in C#, i was wondering if there was one for VB?
Regards,
Cooper
I have attached a converted version.
Should you have any other questions do not hesitate to ask.
Regards,
Dimitar
Progress Telerik
Hi Dimitar,
Thank you for the conversion of the file. It is really appreciated. If i have any more issues ill will definitely ask you.
Kind Regards,
Cooper
Hi Dimitar,
I have implemented the savng tile feature that you have provided, but there is a problem when trying to click the tile once the tiles have been saved. When the tile is moved then saved and then once it is loaded. The tile will no longer run the code when clicked. Do you know a fix for this?
Kind Regards,
Cooper
I have implemented the savng tile feature that you have provided, but there is a problem when trying to click the tile once the tiles have been saved. When the tile is moved then saved and then once it is loaded. The tile will no longer run the code when clicked. Do you know a fix for this?
Kind Regards,
Cooper
Loading the layout will create new objects (items) and the event subscriptions will be lost. After the layout is loaded you need to add the subscriptions again.
I hope this will be useful.
Regards,
Dimitar
Progress Telerik
Hi Dimitar,
How would i do that ?
You need to add the handler after the layout is loaded (with code):
Public
Sub
RestoreEvenHandler()
For
Each
group
As
TileGroupElement
In
radPanorama1.Groups
For
Each
item
In
group.Items
AddHandler
item.Click,
AddressOf
Item_Click
Next
item
Next
group
End
Sub
Private
Sub
Item_Click(
ByVal
sender
As
Object
,
ByVal
e
As
EventArgs)
Dim
item = TryCast(sender, RadTileElement)
Console.WriteLine(item.Text)
End
Sub
Do not hesitate to contact us if you have other questions.
Regards,
Dimitar
Progress Telerik
Hi Dimitar,
I'm not sure how to implement this code into my program. Could you please post this code implemented into the previous code you posted for the panorama tile saving.
This would be greatly appreciated.
Regards,
Cooper
I have attached a new version of the project.
Regards,
Dimitar
Progress Telerik