C# 棱镜和动画控制

C# 棱镜和动画控制,c#,wpf,data-binding,prism,C#,Wpf,Data Binding,Prism,我很想使用它,但我一辈子都不知道如何将项目绑定到它 我想看一个简单的例子,比如 Shell.xaml <Controls:AnimatedTabControl x:Name="TestTab" SelectedIndex="0" VerticalAlignment="Stretch" cal:RegionManager.RegionName="{x:Static inf:RegionNames.TestRegion}" Grid.Row="1" />

我很想使用它,但我一辈子都不知道如何将项目绑定到它

我想看一个简单的例子,比如

Shell.xaml

<Controls:AnimatedTabControl
   x:Name="TestTab"
   SelectedIndex="0"
   VerticalAlignment="Stretch"
   cal:RegionManager.RegionName="{x:Static inf:RegionNames.TestRegion}" 
   Grid.Row="1"  
/>

需要什么代码才能在TestRegion中设置多个选项卡,以便在更改时设置动画。
我似乎不知道如何将任何内容绑定到动画选项卡控件,甚至是常规选项卡控件…

我认为您所面临的问题是,当您实际想要使用视图注入时,您正在使用视图发现

使用视图发现,您可以向区域注册视图,当区域显示时,每个视图都会动态加载。我的猜测是,在某个区域变得可见后,您正在向该区域注册视图。这意味着您的视图将永远不会被实例化,因为该区域已变得可见

视图注入将视图动态插入到已存在的区域中。我想这就是你想要做的。您的shell很好,但您需要在模块初始化调用中添加以下内容:

Views.HelloWorldView hello= new Views.HelloWorldView();
regionmanager.Regions[RegionNames.TestRegion].Add(hello);
这应该能奏效

注意:您可以通过在IRegion上调用Activate/Deactivate方法来显示/隐藏区域中的视图,如下所示:

regionmanager.Regions[RegionNames.TestRegion].Activate(hello);
regionmanager.Regions[RegionNames.TestRegion].Activate(hello);