From 2ed2b328f6b1ec0fdd5835c17d1abe781d42c513 Mon Sep 17 00:00:00 2001 From: brianlagunas_cp Date: Mon, 21 Feb 2011 17:05:17 +0000 Subject: [PATCH] finally got SplitButton popup behavior working properly. --- .../SplitButton/SplitButton.cs | 19 ++++++++----------- .../WPFToolkit.Extended/Themes/Generic.xaml | 6 +++--- 2 files changed, 11 insertions(+), 14 deletions(-) diff --git a/ExtendedWPFToolkitSolution/Src/WPFToolkit.Extended/SplitButton/SplitButton.cs b/ExtendedWPFToolkitSolution/Src/WPFToolkit.Extended/SplitButton/SplitButton.cs index 90add530..67c1f202 100644 --- a/ExtendedWPFToolkitSolution/Src/WPFToolkit.Extended/SplitButton/SplitButton.cs +++ b/ExtendedWPFToolkitSolution/Src/WPFToolkit.Extended/SplitButton/SplitButton.cs @@ -3,7 +3,6 @@ using System.Windows; using System.Windows.Controls; using System.Windows.Input; using System.Windows.Controls.Primitives; -using System.Diagnostics; namespace Microsoft.Windows.Controls { @@ -74,8 +73,7 @@ namespace Microsoft.Windows.Controls protected virtual void OnIsOpenChanged(bool oldValue, bool newValue) { - // TODO: Add your property changed side-effects. Descendants can override as well. - Debug.WriteLine("{0} : {1}", oldValue, newValue); + // TODO: check for cancel event args on an OnOpening event } #endregion //IsOpen @@ -89,25 +87,24 @@ namespace Microsoft.Windows.Controls base.OnApplyTemplate(); _toggleButton = (ToggleButton)GetTemplateChild("PART_ToggleButton"); - _toggleButton.Click += new RoutedEventHandler(_toggleButton_Click); + _toggleButton.Click += ToggleButton_Click; - _popup = (Popup)GetTemplateChild("PART_Popup"); _popup.Opened += Popup_Opened; } - void _toggleButton_Click(object sender, RoutedEventArgs e) - { - Debug.WriteLine("IsOpen : {0} | IsChecked : {1}", IsOpen, _toggleButton.IsChecked); - } - #endregion //Base Class Overrides #region Event Handlers + void ToggleButton_Click(object sender, RoutedEventArgs e) + { + + } + void Popup_Opened(object sender, EventArgs e) { - Mouse.Capture(this, CaptureMode.SubTree); + } private void OnKeyDown(object sender, KeyEventArgs e) diff --git a/ExtendedWPFToolkitSolution/Src/WPFToolkit.Extended/Themes/Generic.xaml b/ExtendedWPFToolkitSolution/Src/WPFToolkit.Extended/Themes/Generic.xaml index 038ca43d..30f61b90 100644 --- a/ExtendedWPFToolkitSolution/Src/WPFToolkit.Extended/Themes/Generic.xaml +++ b/ExtendedWPFToolkitSolution/Src/WPFToolkit.Extended/Themes/Generic.xaml @@ -1220,9 +1220,9 @@ + Style="{StaticResource SplitButtonDropDownStyle}" + IsChecked="{Binding IsOpen, RelativeSource={RelativeSource TemplatedParent}, Mode=TwoWay}" + IsHitTestVisible="{Binding IsOpen, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource InverseBoolConverter}}">