我在WPF中有一个ListBox
,我将歌曲,艺术家,专辑和播放列表加载到其中。
例如,当我点击艺术家按钮时,我会为每个艺术家填充列表框。
当我点击艺术家时,它会加载该艺术家的歌曲。相册也一样。
有向上和向下按钮滚动列表框,自动选择条目并按如下方式向上和向下滚动:
private void FileNavDown_Click(object sender, RoutedEventArgs e)
{
if (MediaList.SelectedIndex < MediaList.Items.Count)
{
MediaList.SelectedIndex++;
MediaList.ScrollIntoView(MediaList.SelectedItem);
}
}
也许你已经看到了我的问题。我无法使用这些按钮滚动浏览我的艺术家,专辑或播放列表,因为他们会自动选择下一个条目,然后填充歌曲。
你认为当我处于艺术家的类别时不应该选择它应该很简单,然后滚动查看选定的项目+ 1,确定,这确实有效,但是当滚动时,因为在条目正上方已经在视图中,滚动到视图不会对用户显示任何内容。我必须先点击五次才能滚动查看5个条目的条目,这在以前是不可见的。
那么,简单的修复?我不想太多地改变结构,也许我只是需要一些东西来检测视图是否完全滚动。如果没有,我可以再次递增/递减滚动索引,并将其滚动到视图中直到它发生变化。