簡體   English   中英

C#如何以逗號分隔的字符串顯示對象屬性列表

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM