WP Pivot-元素已经是另一个元素的子元素

本文关键字:元素 另一个 Pivot- WP | 更新日期: 2023-09-27 18:00:51

我正在尝试在Windows Phone应用程序中动态创建项目并将其添加到网格中。之前我在一个简单的页面上做过,效果很好。现在我在Pivot页面上也做同样的操作,添加第二个项目时出现异常。"元素已经是另一个元素的子元素。"代码的XAML端:

<controls:PivotItem Header="pirmadienis" x:Name="Monday">
            <ScrollViewer Height="600">
                <Grid x:Name="MondayGrid">
                    <TextBlock Text="Laikas" Margin="21,0,-21,0" VerticalAlignment="Top" HorizontalAlignment="Left"/>
                    <TextBlock x:Name="fatherTime" FontSize="40" Text="44:44" HorizontalAlignment="Left" VerticalAlignment="Top" Margin="0,21,0,0" Visibility="Collapsed"/>
                    <TextBlock x:Name="fatherText" HorizontalAlignment="Left" Margin="115,21,0,0" Text="WWWWWWWWW" VerticalAlignment="Top" FontSize="40" Width="341" Visibility="Collapsed"/>
                    <TextBlock Text="Pavadinimas" Margin="215,0,0,0" VerticalAlignment="Top" HorizontalAlignment="Left"/>
                </Grid>
            </ScrollViewer>
        </controls:PivotItem>
        <!--Pivot item two-->
        <controls:PivotItem Header="antradienis" x:Name="Tuesday" Visibility="Collapsed">
            <ScrollViewer Height="600">
                <Grid x:Name="TuesdayGrid">
                    <TextBlock Text="Laikas" Margin="21,0,-21,0" VerticalAlignment="Top" HorizontalAlignment="Left"/>
                    <TextBlock Text="Pavadinimas" Margin="215,0,0,0" VerticalAlignment="Top" HorizontalAlignment="Left"/>
                </Grid>
            </ScrollViewer>
        </controls:PivotItem>
        <!--Pivot item three-->
        <controls:PivotItem Header="trečiadienis" x:Name="Wednesday" Visibility="Collapsed">
            <ScrollViewer Height="600">
                <Grid x:Name="WednesdayGrid">
                    <TextBlock Text="Laikas" Margin="21,0,-21,0" VerticalAlignment="Top" HorizontalAlignment="Left"/>
                    <TextBlock Text="Pavadinimas" Margin="215,0,0,0" VerticalAlignment="Top" HorizontalAlignment="Left"/>
                </Grid>
            </ScrollViewer>
        </controls:PivotItem>
        <!--Pivot item four-->
        <controls:PivotItem Header="ketvirtadienis" x:Name="Thursday" Visibility="Collapsed">
            <ScrollViewer Height="600">
                <Grid x:Name="ThursdayGrid">
                    <TextBlock Text="Laikas" Margin="21,0,-21,0" VerticalAlignment="Top" HorizontalAlignment="Left"/>
                    <TextBlock Text="Pavadinimas" Margin="215,0,0,0" VerticalAlignment="Top" HorizontalAlignment="Left"/>
                </Grid>
            </ScrollViewer>
        </controls:PivotItem>
        <!--Pivot item five-->
        <controls:PivotItem Header="penktadienis" x:Name="Friday" Visibility="Collapsed">
            <ScrollViewer Height="600">
                <Grid x:Name="FridayGrid">
                    <TextBlock Text="Laikas" Margin="21,0,-21,0" VerticalAlignment="Top" HorizontalAlignment="Left"/>
                    <TextBlock Text="Pavadinimas" Margin="215,0,0,0" VerticalAlignment="Top" HorizontalAlignment="Left"/>
                </Grid>
            </ScrollViewer>
        </controls:PivotItem>
        <!--Pivot item six-->
        <controls:PivotItem Header="šeštadienis" x:Name="Saturday" Visibility="Collapsed">
            <ScrollViewer Height="600">
                <Grid x:Name="SaturdayGrid">
                    <TextBlock Text="Laikas" Margin="21,0,-21,0" VerticalAlignment="Top" HorizontalAlignment="Left"/>
                    <TextBlock Text="Pavadinimas" Margin="215,0,0,0" VerticalAlignment="Top" HorizontalAlignment="Left"/>
                </Grid>
            </ScrollViewer>
        </controls:PivotItem>
    </controls:Pivot>

C#代码部分:

void addDateItem(string text)
{
    Thickness tempThick = fatherTime.Margin;
    tempThick.Top += itemsAdded * 58;
    TextBlock temp = new TextBlock() 
        { 
            Text = text, 
            FontSize = 40, 
            HorizontalAlignment = HorizontalAlignment.Left, 
            VerticalAlignment = VerticalAlignment.Top, 
            Margin = tempThick 
        };
    temp.Tap += paspaudus;
    MondayGrid.Children.Add(temp); 
    TuesdayGrid.Children.Add(temp); // Exception on this line
    WednesdayGrid.Children.Add(temp);
    ThursdayGrid.Children.Add(temp);
    FridayGrid.Children.Add(temp);
    SaturdayGrid.Children.Add(temp);
    itemsAdded++;
}

WP Pivot-元素已经是另一个元素的子元素

错误消息很清楚。不能将已作为父元素的子元素添加到其他父元素。您必须为每个<grid>实例化新的TextBlock对象。