using System.ComponentModel; using System.Windows; using System.Collections.ObjectModel; using System.Windows.Controls; using Caliburn; using Caliburn.Services; namespace Samples.SimpleShell { /// /// Interaction logic for Window1.xaml /// public partial class Window1 : Window { public Window1() { InitializeComponent(); //HACK: ItemsSource does not work as expected on TabControl, so this is a workaround. ObservableCollection source = (ObservableCollection)presenterTabs.ItemsSource; source.CollectionChanged += delegate { DependencyObject dp = presenterTabs.ItemContainerGenerator.ContainerFromIndex(0); TabItem item = dp as TabItem; if(item != null) item.Focus(); }; } private void Window_Loaded(object sender, RoutedEventArgs e) { DI.Resolve().Load(); DI.Resolve().RefreshModules(); } private void Window_Closing(object sender, CancelEventArgs e) { DI.Resolve().Save(); } } }