2013-09-28 51 views
0

所以在我最後的帖子,C# Json - to - Array我問如何獲得這兩個值的數組。但是我得到了一個var,我如何在列表框「main_Listbox」中獲得這些變量?Var數組到列表框

+0

使用var是一種壞習慣,它會阻止你知道任何具體的東西是什麼。 – ohmusama

+0

@ohmusama什麼?不,它真的不是。 –

+0

當然,如果你是一位優秀的程序員,無論如何,請使用它。但是,如果你是新的,就像在上面的情況一樣,我絕不會推薦使用var,因爲他永遠不會知道如何將它傳遞給任何東西,因爲所有文檔都會指定類型,因爲他有一個「神奇」變種 – ohmusama

回答

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>另一項任務。

0

基本上,要添加數組或任何集合的值,可以使用foreach語句,該語句允許您迭代實現IEnumerable接口的集合的所有元素。例如:

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

考慮到listOfUsersList<User>類型和User類是這樣的:

class User 
{ 
    public string id; 
    public string pass; 
    public int status; 
} 
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();