J'ai une grille vide qui couvre la plus grande partie de l'écran. Je veux mettre n'importe quel nombre de rectangles ne se chevauchant pas avec du texte centré dans les rectangles. Mon rectangle ne semble apparaître qu'à un endroit, et le texte est seulement en haut à gauche. Aucune idée de comment centrer le texte dans le rectangle, ou placer un second rectangle dire ci-dessous le premier. Le code que j'ai essayé ressemble à ceci:Centrage du texte sur un rectangle et placement de rectangle sur la grille
private void Terminal(string text)
{
// Add a Rectangle Element
TextBlock mytext = new TextBlock();
mytext.Text = text;
mytext.TextAlignment = TextAlignment.Left;
mytext.TextWrapping = TextWrapping.Wrap;
Rectangle myRect = new System.Windows.Shapes.Rectangle();
myRect.Stroke = System.Windows.Media.Brushes.Black;
myRect.Fill = System.Windows.Media.Brushes.Plum;
myRect.HorizontalAlignment = HorizontalAlignment.Left;
myRect.VerticalAlignment = VerticalAlignment.Top;
myRect.Height = 40;
myRect.Width = 100;
myRect.RadiusX = 20; // round the corners
myRect.RadiusY = 20; // round the corners
grid.Children.Add(myRect);
grid.Children.Add(mytext);
}
Ce doit être dynamique donc rien dans le fichier XAML va travailler pour la création des rectangles ou du texte sur eux.