zoukankan      html  css  js  c++  java
  • WPF获取控件内部的ScrollViewer,并控制ScrollViewer操作

    //获取内部  ScrollViewer方法

    public static T FindVisualChild<T>(DependencyObject obj) where T : DependencyObject
            {
                if (obj != null)
                {
                    for (int i = 0; i < VisualTreeHelper.GetChildrenCount(obj); i++)
                    {
                        DependencyObject child = VisualTreeHelper.GetChild(obj, i);
                        if (child != null && child is T)
                        {
                            return (T)child;
                        }
                        T childItem = FindVisualChild<T>(child);
                        if (childItem != null) return childItem;
                    }
                }
                return null;
            }

     

     

     

     

     

      //通过鼠标滑轮事件控制ScrollViewer滚动

      private void list_MouseWheel(object sender, MouseWheelEventArgs e)
            {
                ItemsControl items = (ItemsControl)sender;
                ScrollViewer scroll = FindVisualChild<ScrollViewer>(items);
                if (scroll != null)
                {
                    int d = e.Delta;
                    if (d > 0)
                    {
                        scroll.LineRight();
                    }
                    if (d < 0)
                    {
                        scroll.LineLeft();
                    }
                    scroll.ScrollToTop();
                }
            }

  • 相关阅读:
    Python pip配置国内源
    【VLC】VLC命令行参数
    发个在owasp上演讲web应用防火墙的ppt
    Tips of Linux C programming
    linux程序调试
    scrapy结合webkit抓取js生成的页面
    Using Internet Explorer from .NET
    http长连接200万尝试及调优
    nginx url解码引发的waf漏洞
    poj 2513
  • 原文地址:https://www.cnblogs.com/chuhaida/p/3724776.html
Copyright © 2011-2022 走看看