J'ai une grille qui représente certaines données, et j'ai besoin d'une toile pour superposer par-dessus pour mettre en forme certaines lignes. Le canevas est à l'intérieur de son propre contrôleWPF et superposition de canevas
Le problème est que le canevas et son contenu devraient être automatiquement redimensionnés lorsque la grille redimensionne la largeur et la hauteur. J'ai ajouté la toile à l'intérieur d'une boîte de vue, mais cela n'a pas réussi. Lorsque la grille est redimensionnée, la toile ne le fait pas. Le but de la toile est de superposer une fonctionnalité de type règle sur le dessus de la grille.
Je ne peux pas utiliser de style sur la grille pour remplacer le canevas, car la grille affiche des informations différentes de celles du canevas. Pensez-y comme tableau, dans lequel il y a des colonnes de barres de tailles différentes (dans mon cas, la grille) et les jours sont des lignes dans une superposition (comme un graphique Gantt)
Mon code:
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 est ma commande usercontrol, GRightMain est une grille qui contient à la fois ma toile et la grille avec le contenu (Gright) dans la même ligne et la même colonne.