Tôi cần một số trợ giúp/hướng dẫn về ràng buộc dữ liệu WinForms và tôi dường như không thể giúp Google giúp tôi.Ràng buộc dữ liệu WinForms - Liên kết với các đối tượng trong danh sách
Đây là kịch bản của tôi. Hãy xem xét các lớp học sau đây tương tự như những gì tôi cần:
public class Car
{
public string Name { get; set; }
public List<Tire> Tires { get; set; }
}
public class Tire
{
public double Pressure { get; set; }
}
Trường hợp của tôi về điều này sẽ là đối tượng của lớp Xe với Danh sách có bốn Vật thể lốp. Lưu ý rằng tôi sẽ luôn có một số đối tượng đã biết trong danh sách ở đây.
Bây giờ tôi muốn dữ liệu ràng buộc điều này với Biểu mẫu chứa năm hộp văn bản. Một hộp văn bản với tên của chiếc xe và một hộp văn bản với mỗi áp lực lốp xe.
Bất kỳ ý tưởng nào về cách thực hiện công việc này? Các nhà thiết kế trong VS dường như không cho phép tôi thiết lập điều này bằng cách gán cho danh sách các chỉ mục như Lốp xe [0] .Pressure.
giải pháp hiện tại của tôi là để ràng buộc vào một "BindableCar" mà sẽ như thế nào:
public class BindableCar
{
private Car _car;
public BindableCar(Car car)
{
_car = car;
}
public string Name
{
get { return _car.Name; }
set { _car.Name = value; }
}
public double Tire1Pressure
{
get { return _car.Tires[0].Pressure; }
set { _car.Tires[0].Pressure = value; }
}
public double Tire2Pressure
{
get { return _car.Tires[1].Pressure; }
set { _car.Tires[1].Pressure = value; }
}
public double Tire3Pressure
{
get { return _car.Tires[2].Pressure; }
set { _car.Tires[2].Pressure = value; }
}
public double Tire4Pressure
{
get { return _car.Tires[3].Pressure; }
set { _car.Tires[3].Pressure = value; }
}
}
nhưng điều này trở nên thực sự xấu xí khi danh sách của tôi chứa 20 thay vì 4 đối tượng, và cho mỗi người trong số các đối tượng tôi muốn để ràng buộc với 6 thuộc tính. Điều đó làm cho một "BindableObject" rất lớn!
Không, tôi không giả định rằng điều này không được hỗ trợ do thông báo do nhà thiết kế nhắc. Tôi sẽ thử điều này càng sớm càng tốt. –