0

我有一个网格,其中 ItemsSource 绑定到字符串列表。当我从 ItemsSource 中删除一个元素时,ScrollBar 会移动到已删除的元素,这对我来说是个问题。

例如,我的网格包含 100 行。用户正在关注第 100 行。用户给出删除第一行的命令:ScrollBar 移动到第二行。

有没有办法避免这种行为?

谢谢

4

1 回答 1

0

请向我们展示您的代码。我们想看看您如何将首选项设置为您的网格。进一步告诉我们,当您更改列表中的某些内容时,您是否正在重置 ItemsSource 的值?你在使用 ObservableCollection 吗?

无论如何,看看这个propertly。也许这就是你要找的:

http://msdn.microsoft.com/en-us/library/system.windows.controls.primitives.selector.issynchronizedwithcurrentitem%28v=vs.110%29.aspx

<ListBox Name="employeeListBox1"
         ItemsSource="{Binding Source={StaticResource Employees}}"
         ItemTemplate="{StaticResource EmployeeItemTemplate}"
         IsSynchronizedWithCurrentItem="True"/>

IsSynchronizedWithCurrentItem 应防止在未经您许可的情况下移动滚动条。:)

于 2013-10-28T11:19:24.187 回答