动态将文本块添加到网格

本文关键字:网格 添加 文本 动态 | 更新日期: 2023-09-27 18:36:47

我的网格有 2 行、2 列,我想在第一行、第二列动态添加一个文本块。

这是我的代码,它不会引发异常,但不显示任何内容

<Grid HorizontalAlignment="Left" Height="768" VerticalAlignment="Top" Width="1366">
        <Grid.RowDefinitions>
            <RowDefinition Height="150"/>
            <RowDefinition/>
        </Grid.RowDefinitions>
        <Grid.ColumnDefinitions>
            <ColumnDefinition/>
            <ColumnDefinition Width="250"/>
        </Grid.ColumnDefinitions>
    </Grid>

protected async override void OnNavigatedTo(NavigationEventArgs e)
        {
            TextBlock txt = new TextBlock();
            txt.Width = 200;
            txt.Height = 100;
            txt.Foreground = new SolidColorBrush(Colors.Yellow);
            var location = await InitializeLocationServices();
            txt.Text = location;
            Grid.SetRow(txt, 0);
            Grid.SetColumn(txt, 1);
        }

动态将文本块添加到网格

您永远不会将文本块添加到网格中。您应该命名您的网格(例如x:Name="myGrid"),并在某个时候调用myGrid.Children.Add(txt)。