我想计算存储在列表框中的平均数据的平均值等:XX:XX:XX:XXX但不确定最佳方法将如何/最佳方法。例如,最好将项目放在列表框和数组中以计算或读取列表框中的数据等。
谢谢
更新:每次用户按下按钮时,列表框都会添加一个新条目。存储信息直到应用关闭。
答案 0 :(得分:1)
您应该使用列表来保存数据,然后可以将列表框绑定到数据。使用linq执行所需的计算。
点击此处查看示例: http://code.msdn.microsoft.com/101-LINQ-Samples-3fb9811b
答案 1 :(得分:1)
您希望通过binding完成此操作。绑定允许您将数据存储在一个位置,并仍然在UI中显示它。绑定是MVVM(模型视图ViewModel)框架的基础。
以下是您的XAML外观的示例
<ListBox ItemsSource="{Binding LapTimes}">
<ListBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Time}"/>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
您的网页代码可能类似于
public MainPage()
{
DataContext = new MainViewModel();
InitializeComponent();
}
private void AddButtonClick(object sender, EventArgs e)
{
TimeSpan time = // get time
((MainViewModel)DataContext).LapTimes.Add(time);
}
支持ViewModel可能看起来像
public class MainViewModel // Should implement INotifyPropertyChange
{
public MainViewModel()
{
LapTimes = new ObservableCollection<TimeSpan>();
}
public ObservableCollection<TimeSpan> LapTimes { get; private set; }
private void CalculateStuff()
{
// calculate times
}
}