2
如何根據鼠標位置設置WinForms文本框的SelectionStart?我在擴展TextBox並想在用戶右鍵單擊TextBox時(即與左鍵單擊相同的行爲)將鼠標置於鼠標點下的位置。根據鼠標位置設置WinForms文本框的SelectionStart
這裏是我的onmousedown事件到目前爲止覆蓋:
protected override void OnMouseDown(MouseEventArgs e) {
if (e.Button == System.Windows.Forms.MouseButtons.Right) {
this.Focus();
//if we have a range of text selected, leave it
if (this.SelectionLength == 0) {
//set the SelectionStart here based on the mouse location in the MouseEventArgs e
}
//...
} else
base.OnMouseDown(e);
}
我已經使用調查SetCaretPos(如SetCaretPos(e.Location.X, e.Location.Y);
),但不能使它工作(我看到了一會兒插入符號,但它僅僅是閃光燈並且不會影響SelectionStart)。
完美,謝謝! –