为DataGrid创建扩展方法=>自动滚屏?

时间:2015-11-03 14:38:32

标签: c# datagrid extension-methods

我目前正在研究WPF DataGrid的扩展方法。 这是我到目前为止所得到的:

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 border = VisualTreeHelper.GetChild( dataGrid ,childIndex:0)as   装饰器;

     

"参数类型' System.Windows.Controls.DataGrid'不能分配给参数类型&System; Windows.DependencyObject' "

有谁能解释一下问题是什么以及如何解决?

1 个答案:

答案 0 :(得分:1)

试试这个:

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