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 ...
随机推荐
- 51nod 1301 集合异或和——异或dp
题目:http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1301 好题!看了TJ才会. 因为是不可重集合,所以当然有前 i 个 ...
- Spring之2:Spring Bean动态注册、删除
IoC容器的初始化包括BeanDefinition的Resource定位.载入和注册这三个基本的过程. 一.Resource定位.BeanDefinition的资源定位有resourceLoader通 ...
- BAT小米奇虎美团迅雷携程等等各大企业校招,笔试面试题。
类似在线测试的方式展示题目. 历年在线笔试试卷: 百度 http://www.nowcoder.com/paper/search?query=%E7%99%BE%E5%BA%A6 腾讯http:// ...
- C/C++常用数学函数
math.h/cmath(C++)数学函数库 1 三角函数 double sin (double); double cos (double); double tan (double) ...
- @Deprecated使用技巧
本文转自 http://www.cnblogs.com/hzhuxin/p/4645070.html 我们在做项目时,前期写的类中的一些代码可能由于需求变化的原因需要重写,有时重写时方法的传参和返回值 ...
- Jmeter进行简单mysql数据库测试
1.环境准备: mysql: mysql-5.7.17.msi jdbc驱动: 自己百度一下即可 Jmeter: 3.2 2.打开Jmeter,创建测试计划, 点击浏览,添加jdbc驱动 3.添 ...
- shell工具使用配置备忘
一.bash之vi mode.两种方式:set -o vi(只让bash自己进入vi模式)或 set editing-mode vi(让所有使用readline库函数的程序在读取命令行时都进入vi模式 ...
- LeetCode第20题:有效的括号
问题描述: 给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效. 有效字符串需满足: 左括号必须用相同类型的右括号闭合. 左括号必须以正确的顺序闭合. 注意空 ...
- raspberry是个什么玩意
今天Wilson同学取回一个书本大小的包裹,说买回来一台小电脑,只有信用卡大小! 这是第一次听说和看见raspberry Pi. 一块开发板上有四个USB.一个视频接口.一个音频接口.一个网线接口和电 ...
- 【Qt官方例程学习笔记】Analog Clock Window Example (画笔的平移/旋转/缩放应用)
这个例子演示了如何使用QPainter的转换和缩放特性来简化绘图. 值得学习的: 定时器事件ID检查: 在定时器事件中检查定时器id是比较好的实践. QPainter抗锯齿: We call QPai ...