2015-07-29 3 views
0

Есть ли способ инициализировать содержимое вкладки на загрузке вкладки? У меня возникла проблема, когда Tab создан, он не инициализирует компоненты немедленно. Только когда я нажимаю на вкладку, содержимое будет отображаться.Как я могу инициализировать содержимое TabItem на загрузке TabItem?

<TabControl 
     ItemsSource="{Binding Items}"> 
       <TabControl.ItemTemplate> 
        <DataTemplate> 
         <DockPanel> 
          <TextBlock Text="{Binding TabName}"><TextBlock.Background><SolidColorBrush /></TextBlock.Background></TextBlock> 
          <Button Name="btnDelete" DockPanel.Dock="Right" Margin="5,0,0,0" Padding="0" CommandParameter="{Binding RelativeSource={RelativeSource AncestorType={x:Type TabItem}}, Path=Name}" BorderBrush="#00000000"> 
           <Image Source="/WPF_AccApp;component/Images/11.gif" Height="11" Width="11"></Image> 
          </Button> 
          <DockPanel.Background> 
           <SolidColorBrush /> 
          </DockPanel.Background> 
         </DockPanel> 
        </DataTemplate> 
       </TabControl.ItemTemplate> 
       <TabControl.ContentTemplate> 
        <DataTemplate> 
         <views:TabItemView /> 
        </DataTemplate> 
       </TabControl.ContentTemplate> 
      </TabControl> 

нажатия кнопок событие

 private void AddInvoice_Click(object sender, RoutedEventArgs e) 
    { 
     count++; 

     string s = string.Format("Tab {0}", count); 
     mainViewModel.Items.Add(new ItemViewModel(s)); 
     this.DataContext = mainViewModel; 
     if (count == 1) 
     { 
      //this is as work around 
      // mainViewModel.Items.Add(new ItemViewModel(s)); 
      // mainViewModel.Items.RemoveAt(1); 
     } 

    } 

ответ

Смежные вопросы