Как выбрать вкладки на Silverlight TabControl в дизайнере VS

Как в XAML (Silverlight) редактировать что-либо, кроме первой вкладки в VS Designer? Все, что я вижу, это первая вкладка, и я не знаю, как установить, какая из них выбрана, чтобы я мог видеть содержимое всех вкладок. Спасибо!


person skb    schedule 19.02.2010    source источник
comment
это действительно отстой, я знаю. похоже, что это не исправлено в Silverlight 4 RC для VS2010. Редактор WinForms был намного лучше для многих общих задач, это даже не смешно   -  person Simon_Weaver    schedule 18.03.2010


Ответы (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>
person Arturo Molina    schedule 19.02.2010

Другое решение — создать содержимое каждой вкладки как отдельный элемент управления.

  • EditOrder.xaml
  • EditOrder_CancelOrder.xaml
  • EditOrder_EditItems.xaml

DataContext автоматически наследуется дочерними элементами управления в Silverlight, поэтому вам не нужно устанавливать DataContext на каждой вкладке.

Это делает содержимое вашей вкладки модульным и более удобным для повторного использования с самого начала. Конечно, это зависит от обстоятельств и того, что делает ваше приложение, но это один из способов избежать переключения вкладок, установив IsSelected=true.

person Simon_Weaver    schedule 17.03.2010

Примечание. Не путайте SelectedIndex в TabControl с IsSelected в TabItem.

Использование IsSelected="true" не работает надежно для выбора вкладки (в VS2010)

person Simon_Weaver    schedule 18.03.2010