I've modified your code so that it uses the tips shown in help article I gave you. Here it is:
public
partial
class
MainPage : UserControl
{
public
MainPage()
{
InitializeComponent();
List<
string
> strList =
new
List<
string
>();
RadTileView enterpriseView =
new
RadTileView();
enterpriseView.TileStateChanged +=
new
System.EventHandler<Telerik.Windows.RadRoutedEventArgs>(EnterpriseView_TileStateChanged);
for
(
int
i = 0; i < 4; i++)
{
RadTileViewItem modelTypeItem =
new
RadTileViewItem();
modelTypeItem.Header =
"Tile "
+ i;
RadFluidContentControl contentControl =
new
RadFluidContentControl();
// LARGE CONTENT
ScrollViewer objscrollLarge =
new
ScrollViewer();
StackPanel panel =
new
StackPanel();
panel.Orientation = Orientation.Vertical;
SolidColorBrush panelBackground =
new
SolidColorBrush();
panelBackground.Color = Color.FromArgb(255, 200, 239, 241);
panel.Background = panelBackground;
for
(
int
index = 0; index < 3; index++)
{
TextBlock txtBlk =
new
TextBlock();
txtBlk.Text =
"Large Content TextBlock : "
+ (index + 1);
strList.Add(txtBlk.Text);
panel.Children.Add(txtBlk);
}
objscrollLarge.HorizontalScrollBarVisibility = System.Windows.Controls.ScrollBarVisibility.Auto;
objscrollLarge.VerticalScrollBarVisibility = System.Windows.Controls.ScrollBarVisibility.Auto;
objscrollLarge.Content = panel;
contentControl.LargeContent = objscrollLarge;
// NORMAL CONTENT
ScrollViewer objScrollNormal =
new
ScrollViewer();
System.Windows.Controls.ListBox listbox =
new
System.Windows.Controls.ListBox();
StackPanel stkNormal =
new
StackPanel();
stkNormal.Orientation = Orientation.Vertical;
for
(
int
index = 0; index < 3; index++)
{
System.Windows.Controls.ListBoxItem item =
new
System.Windows.Controls.ListBoxItem();
item.Content = strList[index];
listbox.Items.Add(item);
}
stkNormal.Children.Add(listbox);
objScrollNormal.HorizontalScrollBarVisibility = System.Windows.Controls.ScrollBarVisibility.Auto;
objScrollNormal.VerticalScrollBarVisibility = System.Windows.Controls.ScrollBarVisibility.Auto;
objScrollNormal.Content = stkNormal;
contentControl.Content = objScrollNormal;
// SMALL CONTENT
ScrollViewer objScrollSmall =
new
ScrollViewer();
System.Windows.Controls.ListBox listboxSmall =
new
System.Windows.Controls.ListBox();
StackPanel stkSmall =
new
StackPanel();
stkSmall.Orientation = Orientation.Vertical;
for
(
int
index = 0; index < 3; index++)
{
System.Windows.Controls.ListBoxItem item =
new
System.Windows.Controls.ListBoxItem();
item.Content = strList[index];
listboxSmall.Items.Add(item);
}
stkSmall.Children.Add(listboxSmall);
objScrollSmall.HorizontalScrollBarVisibility = System.Windows.Controls.ScrollBarVisibility.Auto;
objScrollSmall.VerticalScrollBarVisibility = System.Windows.Controls.ScrollBarVisibility.Auto;
objScrollSmall.Content = stkSmall;
contentControl.SmallContent = objScrollSmall;
// We need to set the ContentChangeMode to Manual so we can use the logic in EnterpriseView_TileStateChanged
contentControl.ContentChangeMode = ContentChangeMode.Manual;
modelTypeItem.Content = contentControl;
enterpriseView.Items.Add(modelTypeItem);
}
LayoutRoot.Children.Add(enterpriseView);
}
private
void
EnterpriseView_TileStateChanged(
object
sender, Telerik.Windows.RadRoutedEventArgs e)
{
RadTileViewItem item = e.OriginalSource
as
RadTileViewItem;
RadFluidContentControl fluidContentControl = item.Content
as
RadFluidContentControl;
switch
(item.TileState)
{
case
TileViewItemState.Maximized:
fluidContentControl.State = FluidContentControlState.Large;
break
;
case
TileViewItemState.Minimized:
fluidContentControl.State = FluidContentControlState.Small;
break
;
case
TileViewItemState.Restored:
fluidContentControl.State = FluidContentControlState.Normal;
break
;
default
:
break
;
}
}
}