刷新Comapct Framework中的列表视图,以便显示selectedindex?

时间:2014-02-25 13:46:14

标签: c# winforms listview scroll compact-framework

我需要在列表视图中显示所选项目 我尝试在Form :: OnLoad中使用:

.Items.Add(lvItem);
....
lvItem.Selected = true;
....
.EnsureVisible(selectedIndex);
.Focus() // Make sure list view focused to allow navigate with hardware cursor keys immediate after form shows 

此方法无法正常工作: 它只试图滚动listview。所选项目仍然不可见,用户需要向下滚动2个项目。

这个错误或功能吗?在FF TopItem属性中将该项目滚动到顶部(或尝试执行此操作)

Compact Framework不支持此方法的每个平台的所有版本。

是否可以在CF中模拟此属​​性?我的直接API调用?

P.S。第二个问题:如果我尝试使用滚动条滚动聚焦列表视图,则选择项目阻止。

使用硬件键滚动不会阻止以前自动选择的项目。

1 个答案:

答案 0 :(得分:1)

如果我没记错,EnsureVisible没有正确考虑滚动条。我想我们只调用了EnsureVisible三次(selectedIndex + 1,selectedIndex-1和selectedIndex),并检查第一个和最后一个项目是否有适当的边界。