2012-07-09 17 views
5

मेरे पास एक विंडोज़ फॉर्म है जिसमें डेटाग्रिडव्यू है जिसमें एक एक्सएमएल फ़ाइल से डेटा है। डीजीवी इस प्रकार स्थापित है: दिनांक, उत्पाद, मूल्यसी # डेटाग्रिडव्यू पंक्ति गणना

डेटा की 10 पंक्तियां हैं।

मैं मूल्य में एक पंक्ति से अगले पंक्ति में परिवर्तन की गणना करने और समाधान खोजने में कठिनाई करने की कोशिश कर रहा हूं। उदाहरण के लिए:

1/1/12, ABC, $2.00 
1/1/12, ABC, $2.50 

Net Change: .50 

कॉलम भर में मैं एक Table.Columns.Expression उपयोग कर सकते हैं, लेकिन यह मेरे लिए स्पष्ट नहीं है कि मैं इस गणना बनाम वर्तमान पिछले घटाकर कर सकते हैं।

मैंने कॉलम के माध्यम से पुनरावृत्ति के बारे में सोचा, एक नई तालिका में जोड़कर और इस तरह की गणना की, लेकिन उप-पैरा समाधान की तरह लगता है। एक बार जब मैं परिवर्तन आईडी प्राप्त करता हूं तो उस डेटाग्रिडव्यू को जोड़ना पसंद करता हूं।

परीक्षण नहीं किया है, लेकिन कुछ इस तरह:

if (dataGridView1.Rows.Count > 0) 
{ 
    specifier = "###,###.00"; 

    double tier1Minus = 0; 
    double tier2Minus = 0; 

    for (int i = 0; i < dataGridView1.Rows.Count; ++i) 
    { 
     tier1Minus += Convert.ToDouble(dataGridView1.Rows[i].Cells["Price"].Value); 

     tier2Minus += Convert.ToDouble(dataGridView1.Rows[i+1].Cells["Price"].Value); 
    } 

    // then add to dataGridView1 
} 

उत्तर

3

क्यों नहीं बस (untested) के लिए इसी तरह कुछ करना: बेहतर अभी तक

for(int i = 0; i < dataGridView1.Rows.Count - 1; i++) 
    dataGridView1.Rows[i+1].Cells["NetChange"].Value = 
     Convert.ToDouble(dataGridView1.Rows[i+1].Cells["Price"].Value) - 
     Convert.ToDouble(dataGridView1.Rows[i].Cells["Price"].Value); 

या, यह पहली बार जब आप आयात की गणना फ़ाइल से डेटा और पंक्तियों को सम्मिलित करें।

+0

आह! मैंने इस तरह से संदर्भित करने के बारे में सोचा नहीं था। मै कोशिश करुॅगा। धन्यवाद! – JAS

+0

सुनिश्चित करें कि सॉर्टिंग अक्षम है – Jesse

 संबंधित मुद्दे

  • कोई संबंधित समस्या नहीं^_^