2015-11-03 70 views
0

我目前正在为WPF DataGrid的扩展方法工作。 这是我走到这一步:为DataGrid创建扩展方法=> AutoScroll?

public static void AutoScrollToEnd(this DataGrid dataGrid) 
    { 
     if (dataGrid.Items.Count > 0) 
     { 
      var border = VisualTreeHelper.GetChild(dataGrid, childIndex: 0) as Decorator; 
      if (border != null) 
      { 
       var scroll = border.Child as ScrollViewer; 
       if (scroll != null) scroll.ScrollToEnd(); 
      } 
     } 
    } 

VS这里给我的错误:

VAR边界= VisualTreeHelper.GetChild(的数据网格,childIndex:0)作为 装饰;

“参数类型‘System.Windows.Controls.DataGrid’是不能分配给参数类型‘System.Windows.DependencyObject’”

谁能请解释一下是什么问题,如何解决呢?

+0

你确定这是确切的错误信息你? “System.Widnows”中有一个错字。 Windows拼错了。如果这是确切的错误信息,那么你很可能与其他一些类'DataGrid'这不是一个'DependencyObject' –

+0

工作这是一个^^ \t不幸的是,这只是一个滞后或东西VS.权我刚刚重新启动了笔记本电脑,现在错误消失了。 –

回答

1

试试这个:

if (dataGrid.Items.Count > 0) 
     { 
      var border = VisualTreeHelper.GetChild(dataGrid, childIndex: 0) as ScrollViewer; 
      if (border != null) 
      { 
       border.ScrollToEnd(); 
      } 
     }