2016-01-23 61 views
0

我做了兩個包含我用來在圖上繪製點的值的列表。其中一個包含整數(值列表),另一個包含長整數(Times列表)。我想把它們放到這種格式(x,y)的文本框中,我不知道該怎麼做。我嘗試使用foreach和for循環,但迄今都沒有工作。c#發送點到文本框

private void pointsToolStripMenuItem_Click(object sender, EventArgs e) 
    { 
     /* 
     foreach (var pointsY in Times) 
     { 
      foreach(var pointsX in Values) 
      { 

      } 
     } // end foreach 
     */ 
     for(int i = 0; i < Times.Count; i++) 
     { 
      for(int a = 0; a < Values.Count; i++) 
      { 
       // textBox1.Text += "(" + Values[a] + "," + (int) Times[i] + "), "; 
      } 
     } 

    } 
+0

假設'Times.Count ==值。計數'。試試以下。 'for(var i = 0; i tchelidze

回答

0

假設它們是匹配的集這意味着每個人都有相同數量的物品,你只應該通過這樣的列表中的一個指標。

 for (int i = 0; i < Times.Count; i++) 
     { 
       textBox1.Text += "(" + Values[i] + "," + Times[i] + "), "; 
     } 
+0

謝謝,這工作,但有沒有辦法讓Y值不顯示爲0,如果它的小數? – user5830998

+0

你能舉一個你的意思嗎?像0.12不應該顯示爲零? Ints和longs沒有小數位。 –

+0

長時間來自一個以毫秒爲單位的秒錶值,因此我猜測它的計數時間不到一毫秒。 (我正在計算運行冒泡排序方法的時間) – user5830998

0

假設你有兩個列表:

List<int> ValuesList = new List<int>() { 1, 5, 7, 9, 12, 15 }; 
List<long> TimesList = new List<long>() { 0001, 0002, 0003, 0004, 0005, 0006 }; 

然後......(假設項目在每個列表中的號碼是一樣的,請參見下面詞典範例另一種方式來存儲你的數據),你可以用一個簡單的操作和文本追加到文本框:

for (int i = 0; i == ValuesList.Count; i++) 
      { 
       textBox.Text += string.Format("({0}, {1})", ValuesList[i], TimesList[i]); 
      } 

然而,(假設你的時間是唯一的),將probaly更好地使用不同的數據結構一起存儲VALU在ES:

Dictionary<long, int> VTDictionary = new Dictionary<long, int>(); 

然後你就可以將項目添加到字典中,像這樣:

VTDictionary.Add(0001, 1); 
VTDictionary.Add(0002, 2); 

這樣可以使喜歡的類型......在一起不分開列表,這樣,你就不必調和它們。

然後,檢索項目從字典,並將它們添加到文本框像你提到你試圖做之前,你可以使用foreach:

foreach (KeyValuePair<long, int> kvp in VTDictionary) 
      { 
       textBox.Text += string.Format("({0}, {1})", kvp.Value, kvp.Key); 
      }