Tôi đang sử dụng đoạn mã sau để cập nhật một ListBox, đây recieving một danh sách từ một trang web dịch vụ-Giá trị không nằm trong phạm vi dự kiến
client.userKeywordsCompleted += new EventHandler<userKeywordsCompletedEventArgs>(client_userKeywordsCompleted);
client.userKeywordsAsync();
sử dụng -
void client_userKeywordsCompleted(object sender, userKeywordsCompletedEventArgs e)
{
string result = System.Convert.ToString(e.Result);
for (int i = 0; i < e.Result.Count; i++)
{
ListBoxItem lbitem = new ListBoxItem();
lbitem.Name = "lb_" + i;
lbitem.Content = e.Result[i];
lbitem.AddHandler(UIElement.MouseLeftButtonDownEvent, new MouseButtonEventHandler(ListBoxItem_DoubleClickEvent), true);
listBox1.Items.Add(lbitem);
}
này hoạt động tốt , khi tôi sử dụng nó khi cửa sổ con tải, vì vậy hộp danh sách nhận danh sách từ cơ sở dữ liệu, tuy nhiên khi người dùng chọn một trong các mục trong hộp danh sách, họ có tùy chọn chỉnh sửa mục đã chọn. Vì vậy, một chỉnh sửa được đặt ra, có một nút chỉnh sửa, cập nhật cột trong bảng trong cơ sở dữ liệu. Vì vậy, sau đó bấm vào nút, tôi lại gọi mã nói trên để cập nhật hộp danh sách với các thông tin đăng nhập mới. Tuy nhiên, điều này mang lại lỗi bcak -
"Value does not fall within the expected range."
Tại sao tôi không thể gọi phương thức web khi nhấp vào nút, vì tất cả những gì nó đang làm là làm mới hộp danh sách ???
Vì vậy, bạn sẽ đề xuất những gì tôi đã làm? Tôi đã nhìn vào câu trả lời đó, tôi nghĩ những gì bạn nói là vấn đề. – Ebikeneser
Tôi thực sự chỉ cần thêm một chức năng rõ ràng vào các mục listbox trên nút bấm, điều này làm việc đầu tiên với các tùy chọn được làm mới, tuy nhiên nếu tôi làm lại hộp danh sách không làm mới, bạn có biết tại sao đây không? – Ebikeneser
Sau khi bạn xóa, chỉ có thể vì mục đích gỡ lỗi đảm bảo rằng danh sách các mục bị trống. Có lẽ bạn nên xem xét việc đặt rõ ràng trong cuộc gọi lại. – Stainedart