im cố gắng để truy cập vào một textbox giàu trên một hình thức im sử dụng đoạn mã sau để làm như vậy:chéo hoạt động chủ đề không hợp lệ
Private Delegate Sub StringDelegateChat(text As String, window As ChatWindow)
Private Sub AppendTextChatWindows(text As String, window As ChatWindow)
Try
If window.RichTextBox1.InvokeRequired Then
window.Invoke(New StringDelegateChat(AddressOf AppendTextChatWindows), text, window)
Else
window.RichTextBox1.AppendText(text)
window.RichTextBox1.SelectionStart = window.RichTextBox1.Text.Length
window.RichTextBox1.ScrollToCaret()
End If
Catch ex As Exception
MessageBox.Show(ex.ToString)
End Try
End Sub
nhưng tôi nhận được hoạt động chủ đề xuyên báo lỗi không hợp lệ, tôi nghĩ rằng nó thực hiện điều này bởi vì nó bỏ lỡ phần window.invoke
của câu lệnh if. tôi cũng đã thử thay thế If window.RichTextBox1.InvokeRequired Then
thành If InvokeRequired Then
nhưng nó bị bắt trong vòng lặp tiếp tục và lỗi tràn ngăn xếp được ném.
Cảm ơn Houlahan
Đã cố gắng đã được window.InvokeRequired thay vì window.RichTextBox1.InvokeRequired? –
yea mà chỉ cần bỏ qua cho người khác và sau đó trows ngoại lệ:/ – Houlahan
Bạn có chắc chắn rằng các điều khiển xử lý đã được tạo ra? Ngay cả khi bạn đang có, nó có thể không làm tổn thương để kiểm tra ... – jmoreno