在C#中创建Windows窗体应用程序,我有一个程序,我试图在文本框(textBox3)中插入日期,我无法显示日期。我在弹出的表单上创建了一个按钮,日期显示正常。但是,文本框永远不会填充。有什么建议?这是代码:
private void textBox3_TextChanged(object sender, EventArgs e)
{
var today = DateTime.Today.ToString("dd/MM/yyyy");
textBox3.Text = today;
}
private void button1_Click(object sender, EventArgs e)
{
var today = DateTime.Today.ToString("MM/dd/yyyy");
MessageBox.Show("Today is " + today + ".");
}
答案 0 :(得分:2)
当在其上键入内容时,您的代码只能。原因是您在TextChanged事件中填充Textbox.Text(当用户在文本框中键入内容时)。
我想您要做的是在表单中InitializeComponent之后分配Text属性,或者FormLoad之类的任何其他初始化内容:
public MyForm()
{
InitializeComponent();
InitializeDates();
}
public void InitializeDates()
{
var today = DateTime.Today.ToString("dd/MM/yyyy");
textBox3.Text = today;
}
答案 1 :(得分:0)
只有当您开始在文本框中输入任何内容时,您的文本字段才会更新,因为显然您正在联系Text_Changed事件。
在textBox3
中输入内容,您会看到该文字成为today
所持有的内容。
答案 2 :(得分:0)
首先,感谢任何在没有问题的情况下给我回复的人。我理解问题所针对的地方,但它们只会混淆已经困惑的问题。我通过做事来学习,所以非常感谢您的直接答案!
然而,我解决了需要输入字段以填充日期的问题,通过在加载时预加载文本!所以,伊卡洛斯你是对的。我想假设用户可能根本没有输入日期框。 (试图使其防止失败)
再次感谢,全部! : - )
**private void Form1_Load(object sender, EventArgs e)**
{
try
{
{
textBox2.Text = "Date";
}
{
catch (System.Exception ex)
}
{
MessageBox.Show("Error: " + ex.Message);
}
}
}
其余的很容易。 。
**private void textBox2_TextChanged(object sender, EventArgs e)**
{
var date = DateTime.Now.ToString("MM/dd/yyyy");
textBox2.Text = date;
}