I came up with the following.
On all Views I have a interface defined (IView). This interface makes sure that all views have a property called "Visibility".
IView.cs
public interface IView
{
Visibility Visibility { get; set; }
}
XxxxView.cs
public new Visibility Visibility
{
get { return base.Visibility; }
set { base.Visibility = value; }
}
Anyway, I now have the possiblity to hidde, collapse or make the view visible.
foreach (object item in new List<object>(this.regionManager.Regions["ListRegion"].Views))
{
((IView)item).Visibility = Visibility.Collapsed;
}
view.Visibility = Visibility.Visible;
Update 10.Oct.2008:
You can also just use the FrameworkElement, without implementing a Interface:
foreach (object item in new List<object>(this.regionManager.Regions["DetailRegion"].Views))
{
(item as FrameworkElement).Visibility = Visibility.Collapsed;
}
(view as FrameworkElement).Visibility = Visibility.Visible;