如何在VS设计器中选择Silverlight TabControl中的选项卡
问题描述:
在XAML(Silverlight)中,如何编辑VS Designer中的第一个选项卡?我只能看到第一个选项卡,我不知道如何设置选择哪一个,以便我可以看到所有选项卡的内容。谢谢!如何在VS设计器中选择Silverlight TabControl中的选项卡
答
我不知道是否有办法做到这一点。你可以做的是将TabControl的SelectedIndex属性设置为你想要显示的标签,然后在完成后删除这个属性。
<controls:TabControl SelectedIndex="1">
<controls:TabItem Header="Hello">
<controls:TabItem.Content>
<StackPanel Width="400" Height="300">
<TextBlock Text="Content" />
<TextBlock Text="Content" />
<TextBlock Text="Content" />
<TextBlock Text="Content" />
</StackPanel>
</controls:TabItem.Content>
</controls:TabItem>
<controls:TabItem Header="Hello 2">
<controls:TabItem.Content>
<StackPanel Width="400"
Height="300">
<TextBlock Text="Content 2" />
<TextBlock Text="Content 2" />
<TextBlock Text="Content 2" />
<TextBlock Text="Content 2" />
</StackPanel>
</controls:TabItem.Content>
</controls:TabItem>
</controls:TabControl>
答
另一种解决方案是创建每个选项卡的内容作为单独的控件。
- EditOrder.xaml
- EditOrder_CancelOrder.xaml
- EditOrder_EditItems.xaml
DataContext的是在Silverlight中的子控件自动继承,所以你不必设置DataContext的每个选项卡上。
这使得您的标签内容模块化并且从一开始就更具可重用性。当然,这取决于具体情况以及您的应用正在做什么,但是通过设置IsSelected = true可以避免切换标签页的一种方法。
答
注意:不要在与TabItem上的IsSelected混淆的TabControl上获取SelectedIndex。
使用IsSelected =“true”无法可靠地选择标签(在VS2010中)
这真的很糟糕我知道。好像它在VS2010的Silverlight 4 RC中没有修复。 WinForms编辑器对许多常见任务来说都好得多,它甚至不好笑 – 2010-03-17 23:36:40