Tôi có một ComboBox
thiết lập như sau, nơi KVPList
là một IList
(của KeyValuePair
nếu vấn đề):Ràng buộc một ComboBox để một IList và sử dụng SelectedValue
comboBox.DisplayMember = "Value";
comboBox.ValueMember = "Key";
comboBox.DataSource = KVPList;
Sau đó tôi đã thiết lập một ràng buộc với SelectedValue
, liên kết với một số BindingSource
(đến một số DataSet
). Vì bất kỳ lý do gì, hộp tổ hợp luôn bật lên khi biểu mẫu được hiển thị. Nó là dân cư đúng cách, tuy nhiên (các giá trị của IList
hiển thị tốt và có thể được chọn).
Bây giờ, tôi đã cố gắng hết sức để theo dõi và dường như ban đầu thiết lập SelectedValue chính xác khi bị ràng buộc, nhưng sau đó một nơi nào đó dọc theo cách nó được đặt lại thành null
. Tôi đã chơi với thứ tự được gọi là tốt, không có kết quả.
Có ai có thể làm sáng tỏ điều này hoặc đề xuất giải pháp thay thế không?
Đối với biểu ghi, trên cùng một biểu mẫu, tôi có một hình thức khác ComboBox
trên cùng một biểu mẫu, với SelectedValue
của nó được liên kết với cùng một BindingSource
. DataSource
là DataSet
, không phải là IList
và nó hoạt động như một sự quyến rũ. Nó có thể là một lựa chọn để thực hiện một DataTable
từ IList
, nhưng nó có vẻ như một toàn bộ rất nhiều thêm chi phí; Tôi đang tạo ra IList
từ một điều tra.
Cảm ơn câu trả lời của bạn. Tôi chạy vào cùng một vấn đề. Loại tài sản phụ thuộc của tôi là IList được liên kết với ILIst . (Foo thực hiện IFoo). Mọi thứ dường như đang làm việc ngoại trừ giá trị thuộc tính phụ thuộc luôn là null. Không có ngoại lệ hoặc đầu ra gỡ lỗi. Khi tôi thay đổi loại thuộc tính phụ thuộc thành IList mọi thứ bắt đầu hoạt động. –