public partial class MainWindow : Window
{
ObservableCollection<Class1> items = new ObservableCollection<Class1>();
public MainWindow()
{
InitializeComponent();
#region 定时器事件
Timer aTimer = new Timer();
aTimer.Elapsed += new ElapsedEventHandler(TimedEvent);
aTimer.Interval = 1000; //配置文件中配置的秒数
aTimer.Enabled = true;
#endregion
}
private void TimedEvent(object source, ElapsedEventArgs e)
{
this.Dispatcher.BeginInvoke((Action)delegate()
{
Class1 cl = new Class1();
cl.date = DateTime.Now.ToLocalTime().ToString();
items.Add(cl);
listView.ItemsSource = items.OrderByDescending(t => t.date).Take(5);
});
}
public class Class1 : DependencyObject
{
public string date
{
get { return (string)GetValue(dateProperty); }
set { SetValue(dateProperty, value); }
}
// Using a DependencyProperty as the backing store for date. This enables animation, styling, binding, etc...
public static readonly DependencyProperty dateProperty =
DependencyProperty.Register("date", typeof(string), typeof(Class1), null);
}
}
<ListView ScrollViewer.VerticalScrollBarVisibility="Hidden" x:Name="listView" DataContext="{Binding}" SelectionMode="Extended">
<ListView.View>
<GridView>
<GridViewColumn Header="时间" Width="150"
DisplayMemberBinding="{Binding date,Mode=OneWay}" />
</GridView>
</ListView.View>
</ListView>