Var数组到列表框

时间:2013-09-28 01:04:36

标签: c# arrays json listbox

所以在我的上一篇文章C# Json - to - Array中,我问过如何将两个值放到数组中。但我得到了一个var,如何在列表框“main_Listbox”中获取这些变量?

3 个答案:

答案 0 :(得分:1)

代码中声明为var的任何内容都是隐式输入。这意味着以下内容:

var s = "Hello World!"; // This is compiled as a string
var i = 10; // This is compiled as an integer
var list = new List<string>(); // This is compiled as a List of strings
var arr = new byte[255]; // This is compiled as a byte array.

您的链接帖子似乎显示您的变量是从json序列化程序分配的。这意味着它将是一个字符串。

在另一个答案中还有一个分配是List<User>

答案 1 :(得分:0)

基本上,要添加数组或任何集合的值,您可以使用foreach语句,该语句允许您迭代实现IEnumerable接口的集合的所有元素。例如:

foreach (var user in listOfUsers)
{
    listBox.Items.Add(String.Format("{0} {1} {2}", user.id, user.pass, user.status.ToString());
}

考虑到listOfUsers类型为List<User>User类是这样的:

class User
{
    public string id;
    public string pass;
    public int status;
}

答案 2 :(得分:0)

在上一个问题中我给你的answer中,我使用了以下var

var totalBonusUsers = (from user in data.users
                                   let tot = user.bonus.GetTotalBonus()
                                   select new TotalUserBonus {username = user.username, totalBonus = tot}).ToList()
                                                                                                          .OrderByDescending
                (u => u.totalBonus).ToList();
在这种情况下,

var实际上是= List<TotalUserBonus>

main_Listbox.DataSource = totalBonusUsers;
main_Listbox.DataTextField = "username";
main_Listbox.DataValueField = "totalBonus";
main_Listbox.DataBind();