У меня есть сетка, которая представляет некоторые данные, и мне нужен холст, чтобы наложить поверх него, чтобы расположить некоторые строки. Холст внутри своего пользовательского контроля
Проблема в том, что холст и его содержимое должны автоматически изменять размер при изменении ширины и высоты сетки.
Я добавил холст внутри окна просмотра, но это не сработало. Когда сетка меняет размер, холст нет. Цель холста - наложить функциональность, подобную линейке, поверх сетки.
Я не могу использовать стиль в сетке для замены холста, потому что сетка показывает другую информацию, чем холст. Думайте об этом как о графике, на котором есть столбцы столбцов разных размеров (в моем случае сетка), а дни - это линии в наложении (как диаграмма Ганта)
Мой код:
taxCanvas = new TimeAxis();
Grid.SetRowSpan(taxCanvas, GRightMain.RowDefinitions.Count);
Grid.SetColumnSpan(taxCanvas, GRightMain.ColumnDefinitions.Count);
Grid.SetColumn(taxCanvas, 0); Grid.SetRow(taxCanvas, 0);
Grid.SetZIndex(taxCanvas, -1);
taxCanvas.Height = GRight.ActualHeight;
taxCanvas.Width = GRight.ActualWidth;
GRightMain.Children.Add(taxCanvas);
TimeAxis - это мой пользовательский контроль на холсте, GRightMain - это сетка, в которой и мой холст, и сетка содержат содержимое (Gright) в одной строке и столбце.