internal int GetCellIndexAtLocation(Point loc)
        {
            var uie = InputHitTest(loc) as FrameworkElement;

            if (uie == null)
            {
                return(-1);
            }

            var rowPresenter = TableViewUtils.GetAncestorByType <TableViewCellsPresenter>(uie);

            if (rowPresenter == null)
            {
                return(-1);
            }

            var cell = TableViewUtils.FindParent <TableViewCell>(uie);

            if (cell != null)
            {
                return(rowPresenter.ItemContainerGenerator.IndexFromContainer(cell));
            }

            return(-1);
        }
        internal object GetItemAtLocation(Point loc)
        {
            var uie = InputHitTest(loc) as FrameworkElement;

            if (uie == null)
            {
                return(null);
            }

            var rowPresenter = TableViewUtils.GetAncestorByType <TableViewCellsPresenter>(uie);

            return(rowPresenter != null ? rowPresenter.Item : null);
        }
示例#3
0
        private void OnDragDelta(object sender, DragDeltaEventArgs e)
        {
            var tableViewColumnHeader = TableViewUtils.GetAncestorByType <TableViewColumnHeader>(this);

            if (tableViewColumnHeader == null)
            {
                return;
            }

            var width = tableViewColumnHeader.Width + e.HorizontalChange;

            tableViewColumnHeader.AdjustWidth(width);
        }