метка исчезнет, ​​если таймер обратного отсчета станет нулевым - PullRequest
0 голосов
/ 03 мая 2020

У меня есть текстовый блок (tbTime), который показывает таймер обратного отсчета. когда он получает ноль, текстовый блок (tbTime) показывает все еще нулевые значения. Но я хочу, чтобы этот текстовый блок (tbTime) исчез после того, как таймер обратного отсчета достигнет нуля. Может ли кто-нибудь помочь мне, пожалуйста?

C# Код


public partial class InfoScreen : Window
    {

        DispatcherTimer timer;
                TimeSpan time;
        public InfoScreen()
        {
            InitializeComponent();
            AppearingNext();
            time = TimeSpan.FromSeconds(10);

            timer = new DispatcherTimer(new TimeSpan(0, 0, 1), DispatcherPriority.Normal, delegate
            {
                tbTime.Text = time.ToString("ss");
                if (time == TimeSpan.Zero) timer.Stop();
                time = time.Add(TimeSpan.FromSeconds(-1));
            }, Application.Current.Dispatcher);
            if (tbTime.Text == "00") //My code doesn't work! 
            {
                tbTime.Visibility = Visibility.Hidden;
            }

        }
        private async void AppearingNext()
        {
            await Task.Delay(TimeSpan.FromSeconds(10));
            VisbilityPanel.Visibility = Visibility.Visible;

        }

        private void AgreementClick(object sender, RoutedEventArgs e)
        {
            var registration = new Reset_Register();
            registration.Show();
            Close();
        }
    }

1 Ответ

0 голосов
/ 03 мая 2020

Одним из решений является размещение вашего кода, который скрывает текстовый блок внутри обратного вызова таймера:

timer = new DispatcherTimer(new TimeSpan(0, 0, 1), DispatcherPriority.Normal, delegate {
    tbTime.Text = time.ToString("ss");
    if (tbTime.Text == "00") {
        tbTime.Visibility = Visibility.Hidden;
    }

    if (time == TimeSpan.Zero) timer.Stop();
    time = time.Add(TimeSpan.FromSeconds(-1));
}, Application.Current.Dispatcher);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...