加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 查找文本框光标位置,行号.和列号.在asp.net中

发布时间:2020-12-15 17:23:03 所属栏目:百科 来源:网络整理
导读:我是Web应用程序开发的初学者.我有一个 Windows应用程序的代码.我必须转换为Web应用程序的相同功能.我有一个文本框控件.我正在加载一些文本到该文本框.我想找到当前光标位置,行号和列号. Windows应用程序的代码如下: private void Form1_Load(object sender
我是Web应用程序开发的初学者.我有一个 Windows应用程序的代码.我必须转换为Web应用程序的相同功能.我有一个文本框控件.我正在加载一些文本到该文本框.我想找到当前光标位置,行号和列号. Windows应用程序的代码如下:

private void Form1_Load(object sender,EventArgs e)
    {
        textBox1.Text = @"This is a demo for text box control
                      I am trying to find the cursor position,line no and column no 
                       of the cursor.";         


    }

    private void textBox1_Click(object sender,EventArgs e)
    {
       textBox1.SelectionStart++;
       label2.Text = textBox1.SelectionStart.ToString();
       int i = textBox1.GetLineFromCharIndex(textBox1.SelectionStart);
       label3.Text = i.ToString();
       int j =textBox1.SelectionStart - textBox1. GetFirstCharIndexFromLine(i);
       label4.Text = j.ToString();
    }

    private void textBox1_KeyDown(object sender,KeyEventArgs e)
    {
        if ((e.KeyCode == Keys.Up) || (e.KeyCode == Keys.Right) || 
            (e.KeyCode == Keys.Left) || (e.KeyCode == Keys.Down))
        {
            textBox1.SelectionStart++;
            label2.Text = textBox1.SelectionStart.ToString();
            int i = textBox1.GetLineFromCharIndex(textBox1.SelectionStart);
            label3.Text = i.ToString();
            int j = textBox1.SelectionStart - 
                    textBox1.GetFirstCharIndexFromLine(i);
            label4.Text = j.ToString();
        }
    }

解决方法

作为这个 post中接受的答案,你必须使用javascript来获得你的clinet方面的SelectionStart和SelectionEnd.然后,通过重置数据将结果(可能使用隐藏的输入值)发布到服务器:

How to get selected text from textbox control with javascript

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读