[英]C# How to show list of objects properties as comma delimited string
假設我有這樣的對象:
public class Car
{
public string Name { get; set; }
}
public class MyCars
{
public List<Car> Cars{ get; set; }
public string GetCars
{
get
{
return this.Cars != null ? string.Join(", ", Cars.Select(x => x.Name)) : "N/A";
}
}
}
如果我的列表中有3輛汽車的“名稱”屬性設置為“本田”,“大眾”,“ GMC”
如何將列表轉換為字符串,以逗號分隔的形式顯示列表中每輛汽車的名稱:本田,大眾,GMC
我試圖在我的XAML中將其鏈接為:
<TextBlock Name="txtCarNames" Text="{Binding Path=MyCars.GetCars}"/>
您可以使用LINQ選擇所需的屬性,然后使用string.Join
方法來平整列表。
var cars = new MyCars { /* populate the inner List<Car> */ };
var flatList = cars.Cars != null ? string.Join(", ", cars.Cars.Select(x => x.Name)) : "";
此外,您不能同時將類和屬性都命名為Cars
...,而必須重命名。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.