2015-08-23 4 views
-2

Моему коду нужно динамическое создание списка в соответствии со значением моего текстового поля. Например, если мое текстовое поле равно 4, я могу определить list1, list2, list3, list4 в моей программе. До сих пор я могу изменить значение текстового поля и список в Sametime. Итак, моя проблема в том, могу ли я динамически генерировать список в соответствии с заданным значением?динамическая генерирующая переменная в C#

Это мой код

public List<int> L0 = new List<int>(); 
public List<int> L1 = new List<int>(); 
public List<int> L2 = new List<int>(); 
+0

Какова ваша конечная цель – banging

+2

Почему не можете ли вы использовать списки? они по своей природе являются динамическими по размеру. – DarkKnight

+0

если его список, почему вы не можете увеличить его предметы? вы можете создать список из списка – Tushar

ответ

1

Вы ищете списки. Списки имеют динамический размер. Вы можете увеличить размер по мере необходимости. Переход через эту статью MSDN

https://msdn.microsoft.com/en-us/library/ybcx56wz.aspx

List<List<int>> myList = new List<List<int>>(); 

int NoOfItems = Convert.ToInt32(txt.Text); 

for(int i=0;i<NoOfItems;i++) 
{ 
    myList.Add(new List<int>();) 
} 
+0

Хорошо, я вижу. Список в списке. Используйте myList [0], чтобы процитировать первый список , правильно? Это кажется отличным. Спасибо большое. – DavidHsu

0
List<List<int>> ListOfLists = new List<List<int>>(); 
ListOfLists.Add(new List<int>()); // L0 
ListOfLists.Add(new List<int>()); // L1 
// [...] 
ListOfLists.Add(new List<int>()); // Ln 
+1

все еще довольно жестко закодирован, на самом деле не зависит от текстового поля, проверьте другие ответы – Icepickle

2

Вот пример того, что я догадаться вы пытаетесь сделать (не очень точный вопрос, если честно. Если предположить, что текстовое поле, содержащее номер списков вы хотите создать называется txtListCount:

int count = int.Parse(txtListCount.Text); //convert text in the textbox to number 
List<List<int>> myLists = new List<List<int>>(); //container for your lists 
for(int i = 0; i < count; i++) 
    { 
     myLists.Add(new List<int>()); //create lists dynamically 
    } 
//myLists contains all your lists 
Смежные вопросы