zoukankan      html  css  js  c++  java
  • 一、WPF 2个datagrid之间同步进度条

    页面代码

                <Grid DockPanel.Dock="Left" Width="400">
                    <DataGrid Name="dgSource" VerticalScrollBarVisibility="Visible"  EnableRowVirtualization="False" ScrollViewer.ScrollChanged="DgSource_ScrollChanged" >
                         
                    </DataGrid>
                </Grid>
                <Grid>
                    <DataGrid Name="dgTo"   VerticalScrollBarVisibility="Visible" EnableRowVirtualization="False" ScrollViewer.ScrollChanged="DgTo_ScrollChanged">
                       
                    </DataGrid>
                </Grid>
    View Code

    后端代码

     1   private void DgTo_ScrollChanged(object sender, ScrollChangedEventArgs e)
     2         {
     3             ScrollChanged(dgTo, dgSource, e);
     4         }
     5 
     6         void ScrollChanged(DataGrid dg1, DataGrid dg2, ScrollChangedEventArgs e)
     7         {
     8             if (e.HorizontalChange != 0.0f)
     9             {
    10                 ScrollViewer sv = null;
    11                 Type t = dg1.GetType();
    12                 try
    13                 {
    14                     sv = t.InvokeMember("InternalScrollHost", BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.GetProperty, null, dg2, null) as ScrollViewer;
    15                     sv.ScrollToHorizontalOffset(e.HorizontalOffset);
    16                 }
    17                 catch (Exception ex)
    18                 {
    19                     MessageBox.Show(ex.Message);
    20                 }
    21             }
    22             if (e.VerticalChange != 0.0f)
    23             {
    24                 ScrollViewer sv = null;
    25                 Type t = dg1.GetType();
    26                 try
    27                 {
    28                     sv = t.InvokeMember("InternalScrollHost", BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.GetProperty, null, dg2, null) as ScrollViewer;
    29                     sv.ScrollToVerticalOffset(e.VerticalOffset);
    30                 }
    31                 catch (Exception ex)
    32                 {
    33                     MessageBox.Show(ex.Message);
    34                 }
    35             }
    36 
    37         }
    38 
    39         private void DgSource_ScrollChanged(object sender, ScrollChangedEventArgs e)
    40         {
    41             ScrollChanged(dgSource, dgTo, e);
    42         }
    View Code
  • 相关阅读:
    2429: [HAOI2006]聪明的猴子
    1789: [Ahoi2008]Necklace Y型项链
    3399: [Usaco2009 Mar]Sand Castle城堡
    3713: [PA2014]Iloczyn
    1907: 树的路径覆盖
    2751: [HAOI2012]容易题(easy)
    算法模板——计算几何2(二维凸包——Andrew算法)
    算法模板——splay区间反转 2
    算法模板——Dinic网络最大流 2
    算法模板——Dinic最小费用最大流
  • 原文地址:https://www.cnblogs.com/cvol/p/10647793.html
Copyright © 2011-2022 走看看