Как в XAML (Silverlight) редактировать что-либо, кроме первой вкладки в VS Designer? Все, что я вижу, это первая вкладка, и я не знаю, как установить, какая из них выбрана, чтобы я мог видеть содержимое всех вкладок. Спасибо!
Как выбрать вкладки на Silverlight TabControl в дизайнере VS
Ответы (3)
Я не знаю, есть ли способ сделать это. Что вы можете сделать, так это установить свойство SelectedIndex в вашем TabControl как вкладку, которую вы хотите визуализировать, а затем удалить это свойство, когда закончите.
<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.
Примечание. Не путайте SelectedIndex в TabControl с IsSelected в TabItem.
Использование IsSelected="true" не работает надежно для выбора вкладки (в VS2010)