显示列表到文本块

时间:2013-11-19 15:19:44

标签: c# wpf

List<Data> DataList = Data.GetList();

foreach (var i in DataList)
{
    Txtblock1.Text = ToString(DataList);
}

我只是尝试将自定义类列表的列表内容添加到文本块中。 列表创建有几种不同的数据类型,这就是为什么ToString存在但不起作用。

编辑:我应该说对不起但是我必须为几个班级做这个,将覆盖ToString是明智的吗?

3 个答案:

答案 0 :(得分:2)

这样的事情:

Txtblock1.Text = string.Join("; ", DataList.Select(o => o.ToString()));

然后覆盖ToString类中的Data以提供您想要的内容。分隔符可以是任何东西,它甚至可以是Environment.NewLine

如果您坚持使用您构建的ToString方法,可能就是这样:

Txtblock1.Text = string.Join("; ", DataList.Select(o => ToString(o)));

答案 1 :(得分:1)

Txtblock1.Text += ToString(DataList);

答案 2 :(得分:0)

您需要做两件事:

1)覆盖数据类中的ToString方法:

public override string ToString()

在那里创建一个字符串,其中包含您要显示的对象的值。不要忘记在最后添加Environment.NewLine。

2)在上面的代码中更改如下:

        List<Data> DataList = Data.GetList();

    foreach (var i in DataList)
    {
        Txtblock1.Text += i.ToString();
    }