2015-04-05 159 views
-2

我要为我的项目一个简单的代码,当我在文本框按钮平均点击应该会出现选择数字的平均值在所有组合框中C#WPF组合框平均

  <ComboBox Name="cbnota6" Margin="0,9,0,0"> 
      <ComboBoxItem Content="5"/> 
      <ComboBoxItem Content="6"/> 
      <ComboBoxItem Content="7"/> 
      <ComboBoxItem Content="8"/> 
      <ComboBoxItem Content="9"/> 
      <ComboBoxItem Content="10"/> 
     </ComboBox> 
     <ComboBox Name="cbnota7" Margin="0,9,0,0"> 
      <ComboBoxItem Content="5"/> 
      <ComboBoxItem Content="6"/> 
      <ComboBoxItem Content="7"/> 
      <ComboBoxItem Content="8"/> 
      <ComboBoxItem Content="9"/> 
      <ComboBoxItem Content="10"/> 
     </ComboBox> 
     <ComboBox Name="cbnota8" Margin="0,9,0,0"> 
      <ComboBoxItem Content="5"/> 
      <ComboBoxItem Content="6"/> 
      <ComboBoxItem Content="7"/> 
      <ComboBoxItem Content="8"/> 
      <ComboBoxItem Content="9"/> 
      <ComboBoxItem Content="10"/> 
     </ComboBox> 
      <Button Name="btnmesatarja" Content="Mesatarja" Width="80" Margin="0,10,0,0" Click="btnmesatarja_Click" /> 
     <TextBox Name="txtmesatarja" Width="100" Margin="0,4,0,0"/> 

所以可能你有人告诉怎么做那我问

+0

你问这个问题,我给你一个回应,一个工作的例子。不明白你为什么再次发布,相同的问题 – 2015-04-06 06:15:57

+0

,因为它没有工作:( – berat 2015-04-07 15:56:45

+0

我认为你不能做一个副本粘贴。我的解决方案已经过测试。我投了票。 – 2015-04-07 20:33:03

回答

-1

你可以使用一个foreach循环来遍历每个组合框,以获得这些组合框内的所有项目的总和,保存在一个变量中,以及这些组合框中所有项目的计数。

喜欢的东西

int intCBAverage; 
int intCBSum = 0; 
int intCBCount = 0; 
foreach (var item in cbnota6.Items) 
{ 
    intCBSum += int.Parse(item.ToString()); 
    intCBCount++; 
} 

foreach (var item in cbnota7.Items) 
{ 
    intCBSum += int.Parse(item.ToString()); 
    intCBCount++; 
} 

foreach (var item in cbnota8.Items) 
{ 
    intCBSum += int.Parse(item.ToString()); 
    intCBCount++; 
} 

intCBAverage = intCBSum/intCBCount; 

上面的代码段只是为理念的图示。希望你明白了。

一旦你有了平均水平,你可以在教科书中显示。而不是循环遍历每个组合框,你可以循环遍历表单中的每个控件,检查控件是否是组合框,如果是,则循环组合框项。像

foreach (Control x in this.Controls) 
{ 
    if (x is ComboBox) 
    { 
    foreach (var item in x.Items) 
    { 
     intCBSum += int.Parse(item.ToString()); 
     intCBCount++; 
    } 
    } 
}