日期:2014-05-18  浏览次数:21032 次

C#textbox控件中光标位置问题
我在写一个窗体应用程序,能在textbox控件上输入内容,光标点到什么位置,statusStrip控件能显示当前的行号列号。

我使用的是textbox的textChanged事件,但这个事件只能显示出输入的最后一个字符所在位置,光标点击的位置不能显示。

请问,需要用什么函数事件才行啊?

附上我的代码:

 //行号列号状态显示
  private void txtbx_input_TextChanged(object sender, EventArgs e)
  {
  int row, col = 1;
  string text = txtbx_input.Text.Substring(0, txtbx_input.SelectionStart);
  string[] lines = text.Split('\n');
  row = lines.Length;
  if (lines.Length - 1 >= 0)
  col = lines[lines.Length - 1].Length + 1;
  statuslbl_lineno.Text = "行 " + row + " 列 " + col;
  }

------解决方案--------------------
onKeyDown事件