locked
Как очистить textblock-и ? RRS feed

  • Вопрос

  • Вопрос , как очистить ограниченный массив текстблоков , которые создаются  ?

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Net;
    using System.Windows;
    using System.Windows.Controls;
    using System.Windows.Documents;
    using System.Windows.Input;
    using System.Windows.Media;
    using System.Windows.Media.Animation;
    using System.Windows.Shapes;
    using Microsoft.Phone.Controls;
    
    namespace PhoneApp3
    {
        public partial class MainPage : PhoneApplicationPage
        {
            // Конструктор
            public MainPage()
            {
                InitializeComponent();
            }
            public void newTextBlock(string content)
            {
                TextBlock textBlockName = new TextBlock();
                textBlockName.Text = content;
    
                trace.Children.Add(textBlockName);
            }
    
            private void button1_Click(object sender, RoutedEventArgs e)
            {
                   Double a_num = Convert.ToDouble(a.Text, System.Globalization.CultureInfo.InvariantCulture);
                Double b_num = Convert.ToDouble(b.Text, System.Globalization.CultureInfo.InvariantCulture);
               
                a_num = Math.Floor(a_num);
                b_num = Math.Floor(b_num);
                Double q ; int i ;
    
                q = a_num + b_num;
    
    
                newTextBlock("asdasd= " + q.ToString());
    
    
                    for (i = 1; i < b_num; i++)
                    {
    
    
                        newTextBlock("asdasd= " + q.ToString());
    
                    }
            }
        }
    }
    <phone:PhoneApplicationPage 
        x:Class="PhoneApp3.MainPage"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:phone="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone"
        xmlns:shell="clr-namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        mc:Ignorable="d" d:DesignWidth="480" d:DesignHeight="768"
        FontFamily="{StaticResource PhoneFontFamilyNormal}"
        FontSize="{StaticResource PhoneFontSizeNormal}"
        Foreground="{StaticResource PhoneForegroundBrush}"
        SupportedOrientations="Portrait" Orientation="Portrait"
        shell:SystemTray.IsVisible="True">
    
        <!--LayoutRoot представляет корневую сетку, где размещается все содержимое страницы-->
        <Grid x:Name="LayoutRoot" Background="Transparent">
            <Grid.RowDefinitions>
                <RowDefinition Height="Auto"/>
                <RowDefinition Height="*"/>
            </Grid.RowDefinitions>
    
            <!--TitlePanel содержит имя приложения и заголовок страницы-->
            <StackPanel x:Name="TitlePanel" Grid.Row="0" Margin="12,17,0,28">
                <TextBlock x:Name="ApplicationTitle" Text="МОЕ ПРИЛОЖЕНИЕ" Style="{StaticResource PhoneTextNormalStyle}"/>
                <TextBlock x:Name="PageTitle" Text="имя страницы" Margin="9,-7,0,0" Style="{StaticResource PhoneTextTitle1Style}"/>
            </StackPanel>
    
            <!--ContentPanel — поместите здесь дополнительное содержимое-->
            <Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,0,0" Height="607" VerticalAlignment="Top" HorizontalAlignment="Left" Width="456">
                <TextBox Height="72" HorizontalAlignment="Left" Margin="12,6,0,0" Name="a" Text="" InputScope="number" VerticalAlignment="Top" Width="403" />
                <TextBox Height="65" HorizontalAlignment="Left" Margin="9,84,0,0" Name="b" Text="" InputScope="number" VerticalAlignment="Top" Width="406" />
                <Button Content="Button" Height="72" HorizontalAlignment="Left" Margin="121,155,0,0" Name="button1" VerticalAlignment="Top" Width="160" Click="button1_Click" />
            </Grid>
            <Grid Margin="24,275,0,12" Grid.Row="1">
                <ScrollViewer>
                    <StackPanel x:Name="trace">
                        <!-- your textBlock will be dynamically created here -->
                    </StackPanel>
                </ScrollViewer>
            </Grid>
        </Grid>
     
        <!--Пример кода, иллюстрирующий использование ApplicationBar-->
        <!--<phone:PhoneApplicationPage.ApplicationBar>
            <shell:ApplicationBar IsVisible="True" IsMenuEnabled="True">
                <shell:ApplicationBarIconButton IconUri="/Images/appbar_button1.png" Text="Кнопка 1"/>
                <shell:ApplicationBarIconButton IconUri="/Images/appbar_button2.png" Text="Кнопка 2"/>
                <shell:ApplicationBar.MenuItems>
                    <shell:ApplicationBarMenuItem Text="Элемент меню 1"/>
                    <shell:ApplicationBarMenuItem Text="Элемент меню 2"/>
                </shell:ApplicationBar.MenuItems>
            </shell:ApplicationBar>
        </phone:PhoneApplicationPage.ApplicationBar>-->
    
    </phone:PhoneApplicationPage>

    Код примера. 

    17 сентября 2013 г. 11:37

Ответы

  • Добрый день.

    Ура, я понял ваш вопрос. Он звучит: "Как удалить созданные ранее TextBlock-и?". Отвечаю. Вот так:

                trace.Children.Clear(); 
    
                newTextBlock("asdasd= " + q.ToString());
    
    
                    for (i = 1; i < b_num; i++)
                    {
    
    
                        newTextBlock("asdasd= " + q.ToString());
    
                    }
    

    • Помечено в качестве ответа Panda_Gun 17 сентября 2013 г. 12:58
    17 сентября 2013 г. 11:45
    Отвечающий

Все ответы

  • Добрый день.

    Ура, я понял ваш вопрос. Он звучит: "Как удалить созданные ранее TextBlock-и?". Отвечаю. Вот так:

                trace.Children.Clear(); 
    
                newTextBlock("asdasd= " + q.ToString());
    
    
                    for (i = 1; i < b_num; i++)
                    {
    
    
                        newTextBlock("asdasd= " + q.ToString());
    
                    }
    

    • Помечено в качестве ответа Panda_Gun 17 сентября 2013 г. 12:58
    17 сентября 2013 г. 11:45
    Отвечающий
  • Если это именно то, что вы хотели, то поменяйте заголовок и не забудьте вот в этой теме, отметить мой ответ, как правильный на вопрос: "Как очистить textblock ?".

    17 сентября 2013 г. 11:48
    Отвечающий
  • Спасибо . Все свободны . 
    17 сентября 2013 г. 12:58