2012-03-13 92 views
1

在C#中創建Windows窗體應用程序,我有一個程序,我試圖插入日期到文本框(textBox3),並且我無法獲取日期現身。我在彈出的窗體上創建了一個按鈕,日期顯示得很好。但是,文本框永遠不會填充。有什麼建議麼?下面的代碼:當你開始在文本框中輸入任何東西,因爲,很顯然,你是掛接到Text_Changed事件無法獲取日期顯示在文本框中

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 + "."); 
    } 
+1

我不確定我是否理解爲什麼要修改TextChanged事件中文本框的Text值? – Arun 2012-03-13 18:33:29

+1

你爲什麼要改變報告改變的文本框的文本? – 2012-03-13 18:33:34

回答

0

你的文本字段將只更新。

鍵入textBox3中的內容,您將看到文字變爲today所持有的內容。

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; 
    } 
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; 
      } 
相關問題