我有一個DataGrid在我的視圖與ItemsSource="{Binding GetValues, Mode=TwoWay}"
。在我的ViewModel中: private List getValues = new List();在我的ViewModel中: 如何將LINQ結果綁定到DataGrid,只有一列?
public List<Language> GetValues
{
get { return getValues; }
set { SetField("GetValues", ref getValues, value); }
}
在這種情況下,一切都很好:
DatabaseDataContext myDB = new DatabaseDataContext();
var query = myDB.Languages.Where(u => u.Valid == true).ToList();
GetValues = query;
但我想在我的DataGrid中只有一列就搞定了,所以嘗試這樣做:
DatabaseDataContext myDB = new DatabaseDataContext();
var query = myDB.Languages
.Where(u => u.Valid == true)
.Select(u => new { Name = u.Title });
GetValues = query.ToList();
「不能隱轉換類型 'System.Collections.Generic.List <>'至 'System.Collections.Generic.Lis t'「
有沒有解決這個問題的好方法?
你是對的,但另一種方式,他可以簡單地改變的GetValues是'名單'只是'。選擇(u => u.Title);'。如果他肯定想要使用'Language'類型的列表,它將不起作用。 –
@KeyurPATEL是的,但我認爲他希望使用'語言'本身而不是'字符串',因爲他提到他想填充DataGrid並只有一列,這意味着還會有其他列也使用默認值值/ null。 –