当前位置:  开发笔记 > 编程语言 > 正文

如何在Silverlight中提供文本框焦点?

如何解决《如何在Silverlight中提供文本框焦点?》经验,为你挑选了3个好方法。

在我的Silverlight应用程序中,我似乎无法将焦点带到TextBox控件.在各种帖子的推荐下,我将IsTabStop属性设置为True,我使用的是TextBox.Focus().虽然UserControl_Loaded事件正在触发,但TextBox控件没有获得焦点.我在下面包含了我非常简单的代码.我错过了什么?谢谢.

Page.xaml



            
                    
                
                
    

Page.xaml.cs

using System.Windows;
using System.Windows.Controls;

namespace PasswordTextboxTest
{
    public partial class Page : UserControl
    {
        public Page()
        {
            InitializeComponent();
        }

        private void UserControl_Loaded(object sender, RoutedEventArgs e)
        {
            RegularTextBox.Focus();
        }
    }
}

小智.. 41

我在silverlight.net上找到了这个,并且通过在调用RegularTextBox.Focus()之前添加对System.Windows.Browser.HtmlPage.Plugin.Focus()的调用,能够让它为我工作:

   private void UserControl_Loaded(object sender, RoutedEventArgs e)
   {        
      System.Windows.Browser.HtmlPage.Plugin.Focus();
      RegularTextBox.Focus();
   }


rekle.. 23

Plugin.Focus(); 

不适合我.

调用

 Dispatcher.BeginInvoke(() => { tbNewText.Focus();});

从Load事件起作用.



1> 小智..:

我在silverlight.net上找到了这个,并且通过在调用RegularTextBox.Focus()之前添加对System.Windows.Browser.HtmlPage.Plugin.Focus()的调用,能够让它为我工作:

   private void UserControl_Loaded(object sender, RoutedEventArgs e)
   {        
      System.Windows.Browser.HtmlPage.Plugin.Focus();
      RegularTextBox.Focus();
   }



2> rekle..:
Plugin.Focus(); 

不适合我.

调用

 Dispatcher.BeginInvoke(() => { tbNewText.Focus();});

从Load事件起作用.



3> 小智..:

谢谢Santiago Palladino Dispatcher完美地为我工作.我在做的是:

this.Focus(); 然后Dispatcher.BeginInvoke(()=> {tbNewText.Focus();});

推荐阅读
雯颜哥_135
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有