Есть следующая структура
Смысл в том, чтобы когда тянешь за Border изменял размер его родительский Grid
Не могу к нему обратиться из кода
Пробовал так
var container = sender as Border;
container = (FrameworkElement)VisualTreeHelper.GetParent(container);
var ct = (CompositeTransform)(container as Grid).RenderTransform;// получаю Null Reference
//Или так
var ct = (CompositeTransform)container.RenderTransform;// получаю Не может преобразовать MatrixTransform to RenderTransform
Ответ
Сделал так чтобы тащить нужно было Grid, но только только тогда, когда курсор именно на бордере. Для это использовал события Poiner_Entered и _Exited. Получается так что мы тащим Grid, но из-за того что он там же где и Border, то визульно кажется что тащим все таки Border. Единственный нюанс, так это картинка мерцает
Для определения, что Border видно использовал:
var grid = sender as Grid;
var child = (FrameworkElement)VisualTreeHelper.GetChild(grid,3);
3 это индекс контрола сверху вниз, как на рзметке
Комментариев нет:
Отправить комментарий