Đó là có thể, bạn có thể đánh chặn các cấp thấp nhắn Windows mà các mẹ đẻ TextBox
kiểm soát được để nó dán vào clipboard. Thông báo WM_PASTE
. Được tạo ra khi bạn nhấn Ctrl + V bằng bàn phím hoặc sử dụng lệnh Dán của menu ngữ cảnh. Bạn nắm bắt nó bằng cách ghi đè phương thức WndProc()
của điều khiển, thực hiện dán như mong muốn và không chuyển nó vào lớp cơ sở.
Thêm lớp mới vào dự án của bạn và sao chép/dán mã được hiển thị bên dưới. Biên dịch. Thả điều khiển mới từ đầu hộp công cụ lên biểu mẫu của bạn, thay thế hộp kiểm hiện có.
using System;
using System.Windows.Forms;
class MyTextBox : TextBox {
protected override void WndProc(ref Message m) {
// Trap WM_PASTE:
if (m.Msg == 0x302 && Clipboard.ContainsText()) {
this.SelectedText = Clipboard.GetText().Replace('\n', ' ');
return;
}
base.WndProc(ref m);
}
}
Nguồn
2011-10-21 17:01:30
việc kiểm tra này một: http://stackoverflow.com/questions/3446233/hook-on-default-paste-event-of-winforms-textbox-control –