2016-09-29 1 views
1

나는 정수 배열을 최대 값에서 최소값으로 배열했습니다. 그러나 숫자 값을 사용자가 입력하고 최대 값 최소한 그 수치에 기초하여. 배열은 다음과 같이 구성되어 있습니다정수 목록을 기반으로 문자열 목록 구성하기 C#

int[] array = new int[] { diceRoll1, diceRoll2, diceRoll3, diceRoll4, diceRoll5, diceRoll6, diceRoll7, diceRoll8 }; 
     Array.Sort<int>(array, 
         new Comparison<int>(
           (i1, i2) => i2.CompareTo(i1) 
         )); 

문자열 목록은 사용자가 입력되고, diceRoll1가 NAME1와 함께 간다, diceRoll2는 NAME2 등으로가는

string name1 = nameBox1.Text; 
string name2 = nameBox2.Text; 
string name3 = nameBox3.Text; 
string name4 = nameBox4.Text; 
string name5 = nameBox5.Text; 
string name6 = nameBox6.Text; 
string name7 = nameBox7.Text; 
string name8 = nameBox8.Text; 
+2

처럼 그것을 할 수 있습니다 그것과 관련이 있니? 귀하의 코드에 문자열이 표시되지 않습니다. – dman2306

+5

int에 연결된 문자열이 있으면 int 값에 해당 객체의 컬렉션을 모두 정렬 할 클래스를 만드는 것이 가장 좋습니다. – juharr

답변

0

당신의 문자열을 가지고 있기 때문에 텍스트 상자를 사용하여 숫자를 사용하여 동적으로 텍스트 상자 이름을 작성할 수 있습니다. int 배열에는 원하는 순서대로 1에서 8까지의 문자열 색인이 포함되어 있다고 가정합니다.

string[] textArray = intArray 
    .Select(i => Controls("nameBox" & array[i]).Text) 
    .ToArray(); 

단순히 nameBox1까지 순서 nameBox8에서 문자열을 원하는 경우에, 당신은 당신이 int 배열이있는 경우, 문자열을 일을, 내가 이해하지 못하는이

string[] textArray = Enumerable.Range(0, 8) 
    .Select(i => Controls("nameBox" & (8 - i)).Text) 
    .ToArray(); 
관련 문제