private void ExecuteTabChangedCommand(object obj) { TabViewModel previousTab = null; foreach (var tab in this.Tabs) { if (((TabViewModel)obj).DisplayTitle == tab.DisplayTitle) { tab.HasFocus = true; tab.Foreground = "White"; if (previousTab != null) { previousTab.RightBorderColor = ""; previousTab.RaisePropChangeOnUIThread("RightBorderColor"); } tab.RightBorderColor = "black"; } else { tab.HasFocus = false; tab.Foreground = "Black"; tab.RightBorderColor = "#FFB8B8B8"; } tab.RaisePropChangeOnUIThread("HasFocus"); tab.RaisePropChangeOnUIThread("Foreground"); tab.RaisePropChangeOnUIThread("RightBorderColor"); previousTab = tab; } this.SelectedTab = obj as TabViewModel; this.NotifyPropertyChanged("SelectedTab"); }