private void SB_Slide_Completed(object sender, object e) { zuzhi_listview.IsHitTestVisible = true; rect_old.Opacity = 0; (rect_old.RenderTransform as CompositeTransform).ScaleX = 1; rect_current.Opacity = 1; SB_Slide.Stop(); }
void Rect_Slide() { if (rect_old != null && rect_current != null) { // 如果设置 Width 属性,可能会导致列表宽度发生变化,所以这里使用 Scale来缩放下横线 (rect_old.RenderTransform as CompositeTransform).ScaleX = rect_current.ActualWidth / rect_old.ActualWidth; var old_rect = GetBounds(rect_old, zuzhi_listview); var new_rect = GetBounds(rect_current, zuzhi_listview); // 获取 ListView 单击后,两个 Item之间的距离 SB_Slide_TransX.KeyFrames[1].Value = new_rect.X - old_rect.X; Storyboard.SetTarget(SB_Slide_TransX, rect_old); SB_Slide.Begin(); } }