Silverlight 密码框 Focus
在做一个例子是需要运行起来后焦点默认设置在密码框上,在网上查了资料
自己找到一种方法,此方法在oob模式下管用
public Login()
{
InitializeComponent(); txtLoginName.Text = "admin";
// 设置焦点在密码框上
Dispatcher.BeginInvoke(() => { txtLoginPwd.Focus(); });
}
网上找到的另一种方法
1.想在Silverlight首次启动让某个文本框获取焦点,使用Loaded事件中txt.Focus()是不起做用的,要完成这功能只要添加一句代码即可:
private void LayoutRoot_Loaded(object sender, RoutedEventArgs e)
{
HtmlPage.Plugin.Invoke("focus");
txtName.Focus(); }
2.在程序中为了方便用户,在一个文本框中按回车后跳到别一个文本框或其它控件,我们可以对原有的TextBox进行扩充,添加一个NextControl的属性用于保存下一个控件的名字,
另外为了方便我加了一个ToNextControl的事件,这样用起来更加方便,代码如下:
namespace HahaMan.SLTools.Controls
{
public class MyTextBox:TextBox
{
//事件
public event EventHandler ToNextControl; private string nextControl="";
//用于保存下一个控件的名字
public string NextControl
{
get { return nextControl; }
set { nextControl = value; }
} protected override void OnKeyDown(KeyEventArgs e)
{
base.OnKeyDown(e);
if (e.Key == Key.Enter)//如果是回车
{
if (ToNextControl != null)//如果自己写了事件处理程序
{
ToNextControl(this, e);//调用事件
}
else
{
//如果没有指定事件
if (nextControl != null && nextControl.Length > )
{
//查找下一个控件
Control c = (this.Parent as Panel).FindName(nextControl) as Control;
if (c != null)
{
c.Focus();
}
}
}
}
}
}
}
使用方法一:
<my:MyTextBox Height="" HorizontalAlignment="Left" Margin="786,152,0,0" Name="txtName" <span style="color:#ff0000;">NextControl="txtPwd"</span> VerticalAlignment="Top" Width="" />
<my:MyTextBox Height="" HorizontalAlignment="Left" Margin="786,205,0,0" Name="txtPwd" <span style="color:#ff0000;">NextControl="btnLogin"</span> VerticalAlignment="Top" Width="" />
<Button Content="登录" Height="" Margin="763,259,0,0" Name="btnLogin" VerticalAlignment="Top" HorizontalAlignment="Left" Width="" Click="btnLogin_Click" />
使用方法二:
xaml代码:
<my:MyTextBox Height="" HorizontalAlignment="Left" Margin="786,152,0,0" Name="txtName" VerticalAlignment="Top" Width="" <span style="color:#ff0000;">ToNextControl="toNextControl"</span> />
<my:MyTextBox Height="" HorizontalAlignment="Left" Margin="786,205,0,0" Name="txtPwd" VerticalAlignment="Top" Width="" <span style="color:#ff0000;">ToNextControl="toNextControl"</span> />
<Button Content="登录" Height="" Margin="763,259,0,0" Name="btnLogin" VerticalAlignment="Top" HorizontalAlignment="Left" Width="" Click="btnLogin_Click" />
cs代码:
private void toNextControl(object sender, EventArgs e)
{
if (sender == txtName) txtPwd.Focus();
if (sender == txtPwd) btnLogin.Focus();
}
网上找的方法转载至 http://blog.csdn.net/lijun7788/article/details/8087773
Silverlight 密码框 Focus的更多相关文章
- 模拟placeholder支持ie8以下处理了密码框只读的问题
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- jquery实现密码框显示提示文字
jquery实现密码框提示文字的功能. 代码: <html> <head> 3 <title>登录-jquery实现密码框显示文字-www.jbxue. ...
- IE下支持文本框和密码框placeholder效果的JQuery插件
基于jQuery实现的,主要用于IE下实现placeholder效果,可同时支持文本和密码输入框.placeholder是HTML5新增的一个属性,当input设置了该属性后,该值的内容将作为灰色提示 ...
- wordpress登录密码框明文显示最后一个输入的字符
wordpress登录密码框明文显示最后一个输入的字符 (function(a){a.fn.dPassword=function(c){var e={interval:200,duration:100 ...
- 记住密码后,密码框Password会自动带出数据
一般登陆之后浏览器会询问是否记住密码,如果把密码记住在浏览器上,下次登陆的时候浏览器会把用户名和密码自动填充到登录页面.前段时间服务站平台的员工账号模块提测后,测试提出360浏览器记住密码后会自用把登 ...
- jquery更改输入框type为密码框password
很蛋疼的一个问题: <input type="text" id="e1" value="123" /> 用juqery将文本框变 ...
- jq实现 禁止对密码框中的内容进行复制、剪切和粘贴操作
$(function () { $("input:password").on("copy cut paste", function (e) { return f ...
- 表单form的属性,单行文本框、密码框、单选多选按钮
基础表单结构: <body> <h1> <hr /> <form action="" name="myFrom" en ...
- WPF文本框密码框添加水印效果
WPF文本框密码框添加水印效果 来源: 阅读:559 时间:2014-12-31 分享: 0 按照惯例,先看下效果 文本框水印 文本框水印相对简单,不需要重写模板,仅仅需要一个VisualBrush ...
随机推荐
- centos 6.7 (UDEV,、etc/hosts)安装 RAC 11.2.0.4 报错处理
环境说明: db 11.2.0.4 os: centos 6.7 UDEV管理ASM 没有配置DNS服务器,采用/etc/hosts报错: 1. CVU(Cl ...
- UIButton常见用法
//UIButton是iOS中用来响应用户点击的控件,既可以显示文字,也可以显示图片,也可以处理用户交互 //UIButton的创建,一般采用类方法来创建,不需要释放 //UIButton 也是UIC ...
- 优化Java堆大小的5个技巧
本文作者Pierre是一名有10多年经验的高级系统架构师,他的主要专业领域是Java EE.中间件和JVM技术.根据他多年的工作实践经验,他发现许多性能问题都是由Java堆容量不足和调优引起的.下面他 ...
- rails常用命令示例
数据迁移命令 1.一下命令执行后会在db\migrate下产生同名数据迁移文件(文件内容可自行修改,基本语法见“数据迁移文件”部分) 创建model:rails generate model user ...
- Ruby迭代器(Iterator)
简单的讲,一个迭代器就是一个能接受代码块的方法.当初为了进行迭代操作而设置了带块方法,现在很多时候仍然称它为迭带器. 可实际上,早期版本的 Ruby 将使用代码块的方法称为迭代器,因为它们就是被设计来 ...
- 孙鑫VC学习系列教程
教程简介 1.循序渐进 从Win32SDK编程开始讲解,帮助大家理解掌握Windows编程的核心 -- 消息循环机制. 2.通俗易懂 编程语言枯燥难懂,然而通过孙鑫老师形象化的讲解,Windows和M ...
- SSM框架集成Redis
SSM-Spring+SpringMVC+Mybatis框架相信大家都很熟悉了,但是有的时候需要频繁访问数据库中不变或者不经常改变的数据,就会加重数据库的负担,这时我们就会想起Redis Redis是 ...
- CF1041F Ray in the tube
挂上Chester大神的解题报告 有一个思维跳跃的地方,就是不应该枚举所有的$B$点,而是应该在选定一个$A$点之后枚举距离计算. 然后我们发现枚举距离是$2^k$的长度就可以了,证明如下: 假如距离 ...
- JavaScript学习系列2一JavaScript中的变量作用域
在写这篇文章之前,再次提醒一下 JavaScript 是大小写敏感的语言 // 'test', 'Test', 'TeSt' , 'TEST' 是4个不同的变量名 JavaScript中的变量,最重要 ...
- Ubuntu常用命令集合
文件操作 查看当前目录: pwd 参考文章:https://blog.csdn.net/qq_33421080/article/details/76551554 应用编辑类 安装: sudo apt- ...