@@ -16,6 +16,18 @@ private sealed class ComboBoxHintProxy : IHintProxy
16
16
private readonly ComboBox _comboBox ;
17
17
private readonly TextChangedEventHandler _comboBoxTextChangedEventHandler ;
18
18
19
+ public ComboBoxHintProxy ( ComboBox comboBox )
20
+ {
21
+ if ( comboBox == null ) throw new ArgumentNullException ( nameof ( comboBox ) ) ;
22
+
23
+ _comboBox = comboBox ;
24
+ _comboBoxTextChangedEventHandler = ComboBoxTextChanged ;
25
+ _comboBox . AddHandler ( TextBoxBase . TextChangedEvent , _comboBoxTextChangedEventHandler ) ;
26
+ _comboBox . SelectionChanged += ComboBoxSelectionChanged ;
27
+ _comboBox . Loaded += ComboBoxLoaded ;
28
+ _comboBox . IsVisibleChanged += ComboBoxIsVisibleChanged ;
29
+ }
30
+
19
31
public object Content
20
32
{
21
33
get
@@ -47,21 +59,9 @@ public bool IsEmpty()
47
59
48
60
public event EventHandler Loaded ;
49
61
50
- public ComboBoxHintProxy ( ComboBox comboBox )
51
- {
52
- if ( comboBox == null ) throw new ArgumentNullException ( nameof ( comboBox ) ) ;
53
-
54
- _comboBox = comboBox ;
55
- _comboBoxTextChangedEventHandler = new TextChangedEventHandler ( ComboBoxTextChanged ) ;
56
- _comboBox . AddHandler ( TextBoxBase . TextChangedEvent , _comboBoxTextChangedEventHandler ) ;
57
- _comboBox . SelectionChanged += ComboBoxSelectionChanged ;
58
- _comboBox . Loaded += ComboBoxLoaded ;
59
- _comboBox . IsVisibleChanged += ComboBoxIsVisibleChanged ;
60
- }
61
-
62
62
private void ComboBoxSelectionChanged ( object sender , SelectionChangedEventArgs e )
63
63
{
64
- ContentChanged ? . Invoke ( sender , EventArgs . Empty ) ;
64
+ _comboBox . Dispatcher . InvokeAsync ( ( ) => ContentChanged ? . Invoke ( sender , EventArgs . Empty ) ) ;
65
65
}
66
66
67
67
private void ComboBoxIsVisibleChanged ( object sender , DependencyPropertyChangedEventArgs e )
0 commit comments