public static void SetApplicationBar(DependencyObject obj, ApplicationBar value) { if (!(obj is Page)) { throw new InvalidOperationException("AppbarHost is must owned by Page"); } // TODO: メッセージ怪しい var rootPage = obj as Page; // Check old ApplicationBar if (GetApplicationBar(obj) != null) { // Detatch Events var oldAppBar = GetApplicationBar(obj); oldAppBar.Uninitialize(); } // Initialize ApplicationBar value.Initialize(rootPage); // Set attached property obj.SetValue(ApplicationBarProperty, value); }