2010-02-19 50 views
2

在XAML(Silverlight)中,如何編輯VS Designer中的第一個選項卡?我只能看到第一個選項卡,我不知道如何設置選擇哪一個,以便我可以看到所有選項卡的內容。謝謝!如何在VS設計器中選擇Silverlight TabControl中的選項卡

+0

這真的很糟糕我知道。好像它在VS2010的Silverlight 4 RC中沒有修復。 WinForms編輯器對許多常見任務來說都好得多,它甚至不好笑 – 2010-03-17 23:36:40

回答

3

我不知道是否有辦法做到這一點。你可以做的是將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> 
2

另一種解決方案是創建每個選項卡的內容作爲單獨的控件。

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

DataContext的是在Silverlight中的子控件自動繼承,所以你不必設置DataContext的每個選項卡上。

這使得您的標籤內容模塊化並且從一開始就更具可重用性。當然,這取決於具體情況以及您的應用正在做什麼,但是通過設置IsSelected = true可以避免切換標籤頁的一種方法。

0

注意:不要在與TabItem上的IsSelected混淆的TabControl上獲取SelectedIndex。

使用IsSelected =「true」無法可靠地選擇標籤(在VS2010中)

相關問題