2010-06-09 15 views
6

Tôi có ứng dụng biểu mẫu windows với nhiều biểu mẫu và điều khiển trong đó. Tôi muốn nếu người dùng đã chọn một số văn bản trong bất kỳ điều khiển của bất kỳ hình thức ứng dụng của tôi và bấm vào cắt/sao chép/dán nút trên thanh công cụ hoạt động được thực hiện cho phù hợp.các ứng dụng tạo mẫu bản sao cắt dán của ứng dụng

im sử dụng C# .net của sendkeys.send ("^ c") trên bấm vào nút copy nhưng nó không hoạt động ...

HOẶC bất kỳ 1 có thể biết là có cách nào để chọn văn bản (mặc dù biết, hình thức/kiểm soát của ứng dụng của tôi).

Cảm ơn trước ...

+1

Câu trả lời không hữu ích: http://stackoverflow.com/questions/2881259/editing-many-richtextboxes-and-textboxes –

Trả lời

2

tôi sử dụng này trong phương thức xử lý sự kiện sao chép:

if (this.ActiveControl is TextBox) 
{ 
     Clipboard.SetDataObject(((TextBox)this.ActiveControl).SelectedText, true); 
} 
if (this.ActiveControl is RichTextBox) 
{ 
     Clipboard.SetDataObject(((RichTextBox)this.ActiveControl).SelectedText, true); 
} 
if (this.ActiveControl is ComboBox) 
{ 
     Clipboard.SetDataObject(((ComboBox)this.ActiveControl).SelectedText, true); 
} 

Đối dán, một cái gì đó như thế này:

nCursorPosition = ((RichTextBox)this.ActiveControl).SelectionStart; 
this.ActiveControl.Text = this.ActiveControl.Text.Insert(nCursorPosition, Clipboard.GetText()); 
+1

tôi có ứng dụng mdi với nhiều biểu mẫu mỗi biểu mẫu có thể có nhiều hộp văn bản khi người dùng chọn một số văn bản dưới mọi hình thức và bấm nút sao chép trong menu chính của ứng dụng tôi muốn văn bản đã chọn được sao chép –

5

có bạn sử dụng clipboard để sao chép và dán cho bạn dữ liệu nếu không hơn sử dụng clipboard để kiểm tra

này bài viết này để biết thêm về clipboard: http://www.geekpedia.com/tutorial188_Clipboard-Copy-and-Paste-with-Csharp.html

+1

Cảm ơn bạn đã trả lời. Tôi đã kiểm tra liên kết. trong trường hợp lập trình viên đó biết được hộp văn bản nào được chọn. tôi muốn giải pháp chung. giả sử tôi có lưới dữ liệu với hàng nghìn hàng và cột. bây giờ tôi không biết người dùng đã chọn văn bản nào. tôi có nhiều hình thức để giải quyết. khi người dùng có thể mở nhiều biểu mẫu cùng một lúc. vì vậy tôi không muốn thực hiện kỹ thuật như vậy cho mỗi điều khiển và hình thức. chỉ tìm cách chung. –

+1

hơn việc kiểm tra điều này có thể giúp bạn: http://www.voidspace.org.uk/ironpython/winforms/part8.shtml –

1

Để bạn câu hỏi thứ hai:

Bạn có thể sử dụng giải pháp này What is the preferred way to find focused control in WinForms app? để tìm điều khiển hiện được tập trung.

Sau đó kiểm tra, loại nó là để đọc các lựa chọn (tức là nếu nó là TextBox sử dụng SelectedText -Propery http://msdn.microsoft.com/en-us/library/system.windows.controls.textbox.selectedtext.aspx)

+1

nó không hoạt động đối với tôi. vì tôi có ứng dụng MDI. bằng cách điều khiển hoạt động tôi nhận được nút bấm của thanh công cụ thay vì hộp văn bản mà tôi đã chọn văn bản của một biểu mẫu khác (mdi child) –

Các vấn đề liên quan