gpt4 book ai didi

silverlight - 如何连续滚动 DataGrid?

转载 作者:行者123 更新时间:2023-12-04 06:33:50 27 4
gpt4 key购买 nike

我需要连续滚动 DataGrid,所以它会每秒移动到下一行(例如),并在到达 end 时移动到第一项。请建议完成这项任务的最佳方法。

最佳答案

您可以使用 Dispatcher 并每秒计算所选索引。
像这样的东西:

  private int selectedIndex;
public int SelectedIndex
{
get { return selectedIndex; }
set
{
selectedIndex = value;
NotifyPropertyChanged("SelectedIndex");
}
}

private void BuildDispatcher()
{
DispatcherTimer dispatcherTimer = new DispatcherTimer();
dispatcherTimer.Interval = TimeSpan.FromSeconds(1);
dispatcherTimer.Tick += DispatcherTimerTick;
dispatcherTimer.Start();
}

void DispatcherTimerTick(object sender, EventArgs e)
{
if((SelectedIndex + 1) > MyCollection.Count)
{
SelectedIndex = 0;
}else
{
SelectedIndex++;
}
//EDIT!
MyDataGrid.SelectedIndex = SelectedIndex;
MyDataGrid.ScrollIntoView(MyDataGrid.SelectedItem, MyDataGrid.Columns[0]);
}

编辑

选择的索引在这里后面的代码中设置,您也可以绑定(bind)它并在选择更改处理程序中执行 ScrollIntoView 的东西。

BR,

TJ

关于silverlight - 如何连续滚动 DataGrid?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5076905/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com