Как отобразить сумму значений TimeSpan в textBox в формате чч: мм: сс - PullRequest
0 голосов
/ 26 марта 2019

Я конвертирую введенные пользователем значения textBox в TimeSpan и добавляю все значения TimeSpan, чтобы получить «общее количество времени», если хотите.Затем мне нужно отобразить эту сумму в другом textBox в формате чч: мм: сс.

Прямо сейчас у меня есть, так что он добавляет все значения правильно, однако он просто возвращает значение TotalHours в строку вместочч: мм: сс формат.

    private void calculate_btn_Click(object sender, EventArgs e)
    {

        TimeSpan d1 = TimeSpan.Parse(textBox1.Text);
        TimeSpan d2 = TimeSpan.Parse(textBox2.Text);
        TimeSpan d3 = TimeSpan.Parse(textBox3.Text);

        TimeSpan total = d1 + d2 + d3;

        totaltimebox.Text = (total.TotalHours).ToString();

    }

Пользователь вводит 00:10:00 и 00: 09: 00.

Я ожидаю, что вывод будет 00:19:00, нотоковый выход - 19.

1 Ответ

0 голосов
/ 26 марта 2019

Попробуйте totaltimebox.Text= $"{total.Hours}:{total.Minutes}:{total.Seconds}";.

Похоже, то, что вы делаете, возвращает общее количество часов, то, что вы хотите сделать, это получает часы, минуты и секунды и единичные значения из промежутка времени.

Скажем, у вас есть TimeSpan 2 дня, 2 часа, 20 минут и 10 секунд, возвращаемое значение total.TotalHours будет = 50. В то время как вы действительно хотите отдельные компоненты (часы, минуты исекунд) и поэтому использование total.Hours вернет 2. Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...