从列表框中计算数据的最佳方法
本文关键字:最佳 方法 数据 计算 列表 | 更新日期: 2023-09-27 18:17:57
我想计算平均等圈数据存储在一个列表框,如:XX:XX:XX:XXX,但不确定如何/什么是最好的方法。例如,最好将项目放在列表框中,并从列表框中计算或读取数据的数组等。
感谢UPDATE:每当用户按下一个按钮时,列表框就会添加一个新条目。这些信息会一直保存到应用程序关闭。
您应该使用列表来保存数据,然后您可以将listbox绑定到数据。执行需要使用linq的计算。
请看这里的例子:http://code.msdn.microsoft.com/101-LINQ-Samples-3fb9811b
您将希望通过绑定来实现这一点。绑定允许您将数据存储在一个位置,并且仍然在UI中显示它。绑定是MVVM (Model View 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
}
}