我有一个情况,需要一些帮助来解决这个问题。 enter image description here
我不允许将图片直接嵌入帖子中。正如您可以看到图像一样,数据显示在gridview中,但客户希望它显示为文本下方的文本,如gridivew下面的文本。但是,需要一起显示具有共同日期的文件名。例如:2015年4月18日,有两个不同的文件条目,并希望PAYROLL _ ****** 20150429.csv显示在PAYROLL ***** _ 20150422.csv下。因此不需要第三次进入,只需要第二次和第三次进入俱乐部。可能存在具有相同日期条目的不同文件,并且它们需要被组合在一起。第一个名称191_20150418基于日期条目。
我在C#中使用Win表单。我已将数据收集到数据表中以显示在gridview中。 这是我在下面的代码,显示在标签:
Label.Text += Environment.NewLine + "Name : " + dtSWAction.Rows[i]["Name"] + Environment.NewLine +
"PPED : " + dtSWAction.Rows[i]["Date"] + Environment.NewLine +
"Files : " + dtSWAction.Rows[i]["Files"] + Environment.NewLine;
如果在标签中添加这样的内容不可行,请建议更好的方法。
答案 0 :(得分:1)
执行此操作确实没有任何错误的:
Label.Text +=
Environment.NewLine + "Name : " + dtSWAction.Rows[i]["Name"] +
Environment.NewLine + "PPED : " + dtSWAction.Rows[i]["Date"] +
Environment.NewLine + "Files : " + dtSWAction.Rows[i]["Files"] +
Environment.NewLine;
但是你可以使用string.Format():
Label.Text += string.Format("{0}Name : {1}{0}PPED : {2}{0}Files : {3}{0}",
Environment.NewLine,
dtSWAction.Rows[i]["Name"],
dtSWAction.Rows[i]["Date"],
dtSWAction.Rows[i]["Files"]);
如果您使用的是C#6 / .NET 4.6,则为string interpolation :
Label.Text += $"{Environment.NewLine}Name : {dtSWAction.Rows[i]["Name"]}{Environment.NewLine}PPED : {dtSWAction.Rows[i]["Date"]}{Environment.NewLine}Files : {dtSWAction.Rows[i]["Files"]}{Environment.NewLine}";
看起来您正在使用DataTable来访问此数据,但将来如果您使用的是自定义类,则可以使用上述任何一种方法覆盖类的ToString()
方法:< / p>
public override string ToString()
{
return string.Format("{0}Name : {1}{0}PPED : {2}{0}Files : {3}{0}",
Environment.NewLine,
dtSWAction.Rows[i]["Name"],
dtSWAction.Rows[i]["Date"],
dtSWAction.Rows[i]["Files"]);
}
然后在将来的任何时候你都可以这样称呼它:
Label.Text += instanceOfYourClass.ToString();