
想窗体加载光标就定位到TextBox2么,那么可以利用TabIndex属性的
form上所有的的控件都有TabIndex,值是数字,该值是设置按Tab键会切换到哪一个控件。
你可以把TextBox1的TabIndex属性设置为0,其他控件的依次按顺序累加,这样窗体加载就会自动定位到TextBox1中。所有控件的这个属性的值不要重复,否则以最后设置的那个为准。
给cell内的TextBox添加 Loaded事件
XAML
<DataGridTemplateColumn Header="数量">
<DataGridTemplateColumnCellEditingTemplate>
<DataTemplate>
<TextBox Text="{Binding 数量}" BorderBrush="{x:Null}" Background="{x:Null}" BorderThickness="0" Loaded="TextBox_Loaded" />
</DataTemplate>
</DataGridTemplateColumnCellEditingTemplate>
</DataGridTemplateColumn>
cs
private void TextBox_Loaded(object sender, RoutedEventArgs e)
{
TextBox testTB = sender as TextBox;
testTBFocus();
}
楼上的17kxx_com,楼主用的是 textbox服务器端控件 -_-||,
有两种方法
1js脚本方式
2使用服务器端控件,也就是textbox控件的onchange事件,但是这个是会回发的
这个需求最好使用纯前台脚本(html+javascript)实现,不建议使用aspnet 服务器端控件的服务端事件(因为会回发,也就是页面会刷新一次,比较难看),下面是方法1的实现代码:
<asp:TextBox ID="txtA" onblur="changetText()" >
<asp:TextBox ID="txtB" >
textbox对应会生成 相应的html代码
然后javascript函数
<script>
function changetText()
{
documentgetElementById("txtB")value=documentgetElementById("txtA")value
}
</script>
不涉及后台代码。
以下为全部代码(通过测试)
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Defaultaspxcs" Inherits="WebApplication1_Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 10 Transitional//EN" "">
<html xmlns="" >
<head runat="server">
<title></title>
<script>
function changetText() {
documentgetElementById("txtB")value = documentgetElementById("txtA")value;
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:TextBox ID="txtA" runat="server" onblur="changetText()"></asp:TextBox>
<asp:TextBox ID="txtB" runat="server"></asp:TextBox>
</div>
</form>
</body>
</html>
以上就是关于在c#中 用TextBox1.Focus(); 可是没有获取上焦点,怎么回事全部的内容,包括:在c#中 用TextBox1.Focus(); 可是没有获取上焦点,怎么回事、WPF怎么让datagrid的某个cell下的模板控比如textBox,获取焦点要光标一闪一闪的效果,便于用户输入、text 文本框 失去焦点 js如何获取当前内容等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)