WPF 在繪圖控制元件(Shape)中新增文字 [2018.7.15]
阿新 • • 發佈:2019-01-10
原文:
WPF 在繪圖控制元件(Shape)中新增文字 [2018.7.15]
Q:使用Shape的子類Ellipse畫一個圓,如何在圓中新增文字?
A:Shape類中不包含Text屬性。可使用Shape類和TextBlock類組合,放到Grid中來實現。
純xaml的寫法:
<Grid Height="50" Width="50"> <Ellipse Fill="Yellow" Stroke="Blue" Height="50" Width="50" HorizontalAlignment="Left"></Ellipse> <TextBlock Text="5" TextAlignment="Center" VerticalAlignment="Center" HorizontalAlignment="Center"></TextBlock> </Grid>
純C#的寫法:
Grid nodeGrid = new Grid(); Ellipse nodeCircle = new Ellipse(); nodeCircle.Fill = Brushes.Red; nodeCircle.Stroke = Brushes.Black; nodeCircle.Width = 50; nodeCircle.Height = 50; TextBlock nodeText = new TextBlock(); nodeText.Text = "5"; nodeText.HorizontalAlignment = HorizontalAlignment.Center; nodeText.VerticalAlignment = VerticalAlignment.Center; nodeText.TextAlignment = TextAlignment.Center; nodeGrid.Children.Add(nodeCircle); nodeGrid.Children.Add(nodeText);
效果圖: