diff options
author | Alex Corrado <alexc@xamarin.com> | 2014-04-03 02:19:11 +0400 |
---|---|---|
committer | Alex Corrado <alexc@xamarin.com> | 2014-04-03 02:25:15 +0400 |
commit | 75eedee6ab41417820f7f01db95ba3b52f8a0fc7 (patch) | |
tree | 49698acd92b151cc12ca9f1d5e79160300ee03eb /Xwt.WPF | |
parent | fa6afc16bb0e1e9c4e40d820bafbd0828c938a87 (diff) |
[WPF] Defer calling Widget.Focus() until it is loaded
This fixes a weird issue where a TextBox would not appear at all
if Focus was called too early.
Diffstat (limited to 'Xwt.WPF')
-rw-r--r-- | Xwt.WPF/Xwt.WPFBackend/WidgetBackend.cs | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/Xwt.WPF/Xwt.WPFBackend/WidgetBackend.cs b/Xwt.WPF/Xwt.WPFBackend/WidgetBackend.cs index 80de3636..feb0e62a 100644 --- a/Xwt.WPF/Xwt.WPFBackend/WidgetBackend.cs +++ b/Xwt.WPF/Xwt.WPFBackend/WidgetBackend.cs @@ -216,6 +216,15 @@ namespace Xwt.WPFBackend public void SetFocus ()
{
+ if (Widget.IsLoaded)
+ Widget.Focus ();
+ else
+ Widget.Loaded += DeferredFocus;
+ }
+
+ void DeferredFocus (object sender, RoutedEventArgs e)
+ {
+ Widget.Loaded -= DeferredFocus;
Widget.Focus ();
}
|