在C#文本框中(服务器控件,文本框中有值),在等到焦点时,怎样让光标自动跳到文本末尾

在C#文本框中(服务器控件,文本框中有值),在等到焦点时,怎样让光标自动跳到文本末尾,第1张

不好意思,我写了winform的textbox的方法了,如果是web控件,可以用前台javascript来实现, 下面是一个例子,效果是在textbox被触发后设光标到最后位置,你可以根据你的具体情况来用:

<body >

<form id="form1" runat="server">

<div>

<asp:TextBox ID="TextBox1" Text = "1234567890" runat="server" ></asp:TextBox>

<script language = "javascript" type ="text/javascript">

function moveAtCaret()

{

//将obj中光标向dirc方向移动n个字符

var obj = document.getElementById("<%=TextBox1.ClientID%>")

obj.focus()

var rng=document.selection.createRange()

rng.moveStart("character", obj.value.length)

rng.select()

}

</script>

</div>

</form>

</body>

然后在后台CS文件page_load事件里写:

protected void Page_Load(object sender, EventArgs e)

{

if (!IsPostBack)

{ TextBox1.Attributes.Add("Onfocus", "moveAtCaret()")}

}

写这个页面的KeyDown 事件

如下例,在窗体pkForm中有个按钮名为tuichu,设置快捷键为C

private void pkForm_KeyDown(object sender, KeyEventArgs e)

{

if (e.KeyCode==Keys.C)

{

tuichu_Click(null, null)

}

}

要提醒的是先把窗体的KeyPreview设为true。

当使用Ctrl + *快捷键时

private void pkForm_KeyDown(object sender, KeyEventArgs e)

{

if (e.KeyCode == Keys.F &&e.Control)

{

dakai_Click(null, null)//执行单击dakai按钮的单击事件

}

}

aspnet提供两种类型的服务器控件:html服务器控件和web服务器控件。

html服务器控件就是在其代码中加入runat=“server”。

web服务器控件就是通常使用的

评论

0

0

0

加载更多


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/115647.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-03-12
下一篇2023-03-12

发表评论

登录后才能评论

评论列表(0条)

    保存