C#创建一个以mm:ss为单位计数的计时器,可以在';x';分钟

C#创建一个以mm:ss为单位计数的计时器,可以在';x';分钟,c#,timer,C#,Timer,嘿,我正在创建一个与另一个程序交互的程序,我正在尝试设置一个计时器 我想要一个以mm:ss格式计数的计时器 int seconds = 0; int minutes = 0; private void timer1_Tick(object sender, EventArgs e) { seconds++; lblView.Text = seconds.ToString(); } 现在我正处在一个阶段,我有一个标签在几秒钟

嘿,我正在创建一个与另一个程序交互的程序,我正在尝试设置一个计时器

我想要一个以mm:ss格式计数的计时器

    int seconds = 0;
    int minutes = 0;
    private void timer1_Tick(object sender, EventArgs e)
    {
        seconds++;
        lblView.Text = seconds.ToString();

    }
现在我正处在一个阶段,我有一个标签在几秒钟内上升,但我希望它同时显示分和秒。我查了一下,读了一些关于时间跨度的书

我遇到过这种方法:

public static double ConvertSecondsToMinutes(double seconds)
    {
        return TimeSpan.FromSeconds(seconds).TotalMinutes;
    }

但不知道如何在我的代码中实现它。我正在寻找正确的方法来做到这一点。谢谢

。在TimeSpan对象上执行字符串操作需要一个格式化程序

int seconds = 0;
int minutes = 0;
private void timer1_Tick(object sender, EventArgs e)
{
    seconds++;
    lblView.Text = TimeSpan.FromSeconds(seconds).ToString("mm\\:ss");

}
这个怎么样

int seconds = 0;
int minutes = 0;

private void timer1_Tick(object sender, EventArgs e)
{
    seconds++;
    minutes = (int)Math.Floor(seconds / 60);
    lblView.Text =  minutes.ToString() + ":" + (seconds % 60).ToString();
}

然后,您甚至不必增加,您可以确定每次间隔的秒数和分钟数。

您不确定的是什么?您尝试过什么?您需要将
(秒/60)
转换为十进制或双精度:
minutes=(int)Math.Floor((十进制)(秒/60))
否则您将遇到一个错误,提示:
调用不明确
DateTime dt = new DateTime.Now;

private void timer1_Tick(object sender, EventArgs e)
{
    lblView.Text = string.Format("{0:mm\\:ss}", DateTime.Now - dt);
}