Hallo allerseits,
ich habe ein Problem mit der Eigenschaft SupportsSeaching der BindingSource.
[highlight=c#]
using (Tracking.DataLayer.TrackingDataContext ctx = new Tracking.DataLayer.TrackingDataContext())
{
// Linq-Abfrage (Linq to SQL)
// gibt ein Objekt vom Typ IQueryable zurück
var query = from t in ctx.vw_TaskListes
select new { t.TaskID, t.BeschrKurz, t.Verantwortlicher };
this.bindingSource1 = new BindingSource();
this.bindingSource1.DataSource = query;
dgvTaskListe.DataSource = this.bindingSource1;
}
[/highlight]
Nun möchte ich in der Liste auf einem ganz bestimmten Record positionieren, z.B. dem Record mit der ID = 3:
[highlight=c#]
if (this.bindingSource1.SupportsSearching != true)
MessageBox.Show("Cannot search the list.");
else // und auf dem neuen Datensatz positionieren
this.bindingSource1.Position = this.bindingSource1.Find("ID", 3);
[/highlight]
Hier laufe ich immer in den if-Zweig rein. Anscheinend unterstützt die verwendete BindingSource das Suchen nicht.
Die Suche in msdn hat dann folgendes ergeben:
ich habe ein Problem mit der Eigenschaft SupportsSeaching der BindingSource.
[highlight=c#]
using (Tracking.DataLayer.TrackingDataContext ctx = new Tracking.DataLayer.TrackingDataContext())
{
// Linq-Abfrage (Linq to SQL)
// gibt ein Objekt vom Typ IQueryable zurück
var query = from t in ctx.vw_TaskListes
select new { t.TaskID, t.BeschrKurz, t.Verantwortlicher };
this.bindingSource1 = new BindingSource();
this.bindingSource1.DataSource = query;
dgvTaskListe.DataSource = this.bindingSource1;
}
[/highlight]
Nun möchte ich in der Liste auf einem ganz bestimmten Record positionieren, z.B. dem Record mit der ID = 3:
[highlight=c#]
if (this.bindingSource1.SupportsSearching != true)
MessageBox.Show("Cannot search the list.");
else // und auf dem neuen Datensatz positionieren
this.bindingSource1.Position = this.bindingSource1.Find("ID", 3);
[/highlight]
Hier laufe ich immer in den if-Zweig rein. Anscheinend unterstützt die verwendete BindingSource das Suchen nicht.
Die Suche in msdn hat dann folgendes ergeben:
"Wenn die Datenquelle keine IBindingList ist, gibt SupportsSearching immer false zurück."
Frage: wie kann ich sicherstellen, dass ich es mit einem IBindingList-Objekt und nicht nur mit einem IQueryable-Objekt zu tun habe?
Comment