Ich habe eine Datagridview, die gebunden ist - über eine Bindungsquelle - auf eine Liste von Entitäten:Entity Framework 4 Bindung ein Bezugsfeld zu einem Datagridview Spalte
VehicleRepository:
private IObjectSet<Vehicles> _objectSet;
public VehicleRepository(VPEntities context)
{
_context = context;
_objectSet = context.Vehicles;
}
List<Vehicle> IVehicleRepository.GetVehicles(Model model)
{
return _objectSet
.Where(e => e.ModelId == model.ModelId)
.ToList();
}
In meinem Moderator
private List<Vehicle> _vehicles;
...
_vehicles = _vehicleRepository.GetVehicles(_model);
_screen.BindTo(_vehicles);
meiner Ansicht
public void BindTo(List<Vehicle> vehicles)
{
_vehicles = vehicles;
if (_vehicles != null)
{
VehicleBindingSource.DataSource = _vehicles;
}
}
Das funktioniert einwandfrei - mein Raster zeigt die Daten so an, wie sie sollten. Im Raster möchte ich jedoch die Spalte ModelId durch ein Beschreibungsfeld aus der Tabelle Model ersetzen. Ich habe versucht, die Bindung für die Spalte von ModelId zu Model.ModelDescription zu ändern, aber die Spalte scheint nur leer.
Ich bin ziemlich sicher, dass die Daten geladen werden, wie ich es sehen kann, wenn ich debugge, und wenn die gleiche Liste an einen Detailbildschirm übergeben wird, kann ich die zugehörigen Daten an Textfelder binden und die Daten sehen .
Mache ich etwas offensichtlich falsch?