![](/img/trans.png)
[英]C#: Why doesn't ShowDialog().ToString() return expected String?
[英]ToString() does not return the expected string
using System;
using System.Collections.Generic;
using System.Text;
namespace ConsoleApplication3Generics
{
class Program
{
static void Main(string[] args)
{
ScheduleSelectedItems sitems = new ScheduleSelectedItems("Yusuf");
ScheduleSelectedItemsList slist = new ScheduleSelectedItemsList();
slist.Items.Add(sitems);
Console.Write(slist.Items[0].ToString());
Console.ReadKey();
}
}
public class ScheduleSelectedItems
{
private string Ad;
public ScheduleSelectedItems(string ad)
{
Ad = ad;
}
}
public class ScheduleSelectedItemsList
{
public List Items;
public ScheduleSelectedItemsList()
{
Items = new List();
}
}
}
如何在我的控制台上添加“yusuf”?
public class ScheduleSelectedItems
{
private string Ad;
public ScheduleSelectedItems(string ad)
{
Ad = ad;
}
public override string ToString()
{
return this.Ad;
}
}
什么BFree说,稍作修改,使其成为单数而不是复数:
public class ScheduleSelectedItem
{
private string Ad;
public ScheduleSelectedItem(string ad)
{
Ad = ad;
}
public override string ToString()
{
return this.Ad;
}
}
此外,您需要为列表添加“添加”方法。 当你在它的时候,为什么不继承list类:
public class ScheduleSelectedItemsList : List<ScheduleSelectedItem>
{
}
或者你可以创建一个类型别名:
using ScheduleSelectedItemsList = List<ScheduleSelectedItem>;
无论哪种方式,您都可以使用这样的新代码:
class Program
{
static void Main(string[] args)
{
var slist = new ScheduleSelectedItemsList()
{
new ScheduleSelectedItem("Yusuf")
};
//write every item to the console, not just the first
slist.All(item => Console.Write(item.ToString()) );
Console.ReadKey();
}
}
将其添加到ScheduleSelectedItems
类:
public override string ToString() {
return Ad;
}
这告诉系统应该如何格式化这样的对象。
您需要覆盖ScheduleSelectedItems的toString()方法以返回“Ad”。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.