c#动态标签上的刷新值
本文关键字:刷新 动态 标签 | 更新日期: 2023-09-27 18:05:08
我想问一个问题。我得到了这个代码,我的意图是让我的动态标签刷新值,而不是堆叠在另一个标签上。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace refresh_label
{
public partial class Form1 : Form
{
Int64 num1 = 0;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
Timer t1 = new Timer();
t1.Interval = 1;
t1.Tick += new EventHandler(lbl_refresh);
t1.Enabled = true;
Label lbl = new Label();
lbl.Text = num1.ToString();
this.Controls.Add(lbl);
}
private void lbl_refresh(object sender, EventArgs e)
{
num1++;
}
}
}
//on this one it's working but staking labels. is there a way to refresh the label without staking it and then clear it? thank you for your time.
private void Form1_Load(object sender, EventArgs e)
{
Timer t1 = new Timer();
t1.Interval = 1;
t1.Tick += new EventHandler(lbl_refresh);
t1.Enabled = true;
}
private void lbl_refresh(object sender, EventArgs e)
{
num1++;
Label lbl = new Label();
lbl.Text = num1.ToString();
this.Controls.Add(lbl);
lbl.BringToFront();
}
请尝试一下-
在设计时添加标签并更改代码-
private void lbl_refresh(object sender, EventArgs e)
{
num1++;
lbl.Text = num1.ToString();
lbl.Update();
}
Int64 num1 = 0;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
Timer t1 = new Timer();
t1.Interval = 1;
t1.Tick += new EventHandler(lbl_refresh);
t1.Enabled = true;
Label lbl = new Label();
lbl.Name="myLabel";
lbl.Text = num1.ToString();
this.Controls.Add(lbl);
}
private void lbl_refresh(object sender, EventArgs e)
{
Label l = Controls.Find("myLabel",true)[0] as Label;
l.Text = num1.ToString();
num1++;
}