WPF listbox选中的item放在中间 使用 ObservableCollection 绑定数据源 使用ObservableCollection的Move方法 移动到索引为3的位置 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我试了 可以 但是当我的只会向右移动不会向左移动如顺序为1 2 3 4 5 6 7 只能显示5个 显示的是2 3 4 5 6,中间的是别选择的如(4),当我点击3后 3可以移动到中间即显示为1 2 3 4 5,但是选择5 或者6 都不动,不会显示成 3 4 5 6 7.我些了this.listView1.UpdateLayout(); <ListBox Name="listbox" MouseLeftButtonDown="listbox_MouseLeftButtonDown" Margin="117,12,316,220" > <ListBoxItem PreviewMouseLeftButtonDown="listbox_MouseLeftButtonDown" >1</ListBoxItem> .............. </ListBox>private void listbox_MouseLeftButtonDown(object sender, MouseButtonEventArgs e) { var index = listbox.Items.IndexOf(sender); var children = VisualTreeHelper.GetChild(listbox,0); ScrollViewer sv = VisualTreeHelper.GetChild(children, 0) as ScrollViewer; var perItemScrollHeight = sv.ScrollableHeight / listbox.Items.Count; sv.ScrollToVerticalOffset((index - 2) > 0 ? (index - 2) * perItemScrollHeight : 0); }通过这种方式手动控制scrollvier的滚动条,基本上这么个思路,你试试看吧 代码如何实现 控制面板中添加Windows 凭据 用WebBrowser的问题 文本框提示信息 大侠请进,将一个浮点数转换为IEEE浮点格式?急!!!100分相送。 请教各位C#熟手,在C#中怎样实现文字滚动?? 有没有用Fast-Report的大大啊? c# 字符串传递乱码问题 窗体HELP 由网卡MAC地址获取IP方法? C#怎么获取链接的文本内容 xml文件解析到DATASET c#学习中遭遇困难,紧急求救.
<ListBox Name="listbox" MouseLeftButtonDown="listbox_MouseLeftButtonDown" Margin="117,12,316,220" >
<ListBoxItem PreviewMouseLeftButtonDown="listbox_MouseLeftButtonDown" >1</ListBoxItem>
..............
</ListBox>private void listbox_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
var index = listbox.Items.IndexOf(sender);
var children = VisualTreeHelper.GetChild(listbox,0);
ScrollViewer sv = VisualTreeHelper.GetChild(children, 0) as ScrollViewer;
var perItemScrollHeight = sv.ScrollableHeight / listbox.Items.Count;
sv.ScrollToVerticalOffset((index - 2) > 0 ? (index - 2) * perItemScrollHeight : 0);
}通过这种方式手动控制scrollvier的滚动条,基本上这么个思路,你试试看吧