private void textBox3_TextChanged(object sender, EventArgs e)
{
if (textBox3.Text == "")
{
textBox3.Text == "---";
}
}
我想在這裏做的是檢查文本框爲空,如果是,那麼---將自動在另一個datagridview的檢查文本框是否爲空並填充它?
private void textBox3_TextChanged(object sender, EventArgs e)
{
if (textBox3.Text == "")
{
textBox3.Text == "---";
}
}
我想在這裏做的是檢查文本框爲空,如果是,那麼---將自動在另一個datagridview的檢查文本框是否爲空並填充它?
問題是還不是很清楚。我不知道DataGridView在哪裏發揮作用,因爲代碼都是關於文本框的。
但無論如何,這個代碼是而不是很好的解決了這個問題。您將不斷干擾用戶更改文本框內容的能力,導致極其令人沮喪的體驗。
如果您必須這樣做,請確保您僅在文本框失去焦點時執行此操作,而不是每次文本更改時執行此操作。也就是說,處理LostFocus
事件,而不是TextChanged
事件。您可以進行相同的條件測試,但要確保操作員正確! (==
爲平等測試; =
爲轉讓)。
private void textBox3_LostFocus(object sender, EventArgs e)
{
if (textBox3.Text == "")
{
textBox3.Text = "---";
}
}
更好的解決方案是use a textbox with a cue banner。將提示橫幅設置爲「---」字符串,只要文本框爲空(不包含文本),就會顯示提示橫幅。這一切都是由操作系統自動完成的,並作爲文本框繪畫邏輯的一部分進行處理,因此它不會干擾用戶與控件進行交互的能力。它也是可預測的,並與標準的Windows用戶界面行爲一致。
如果您確實想要檢查文本框是否爲空,並且如果是,請將「---」添加到DataGridView,那麼TextChanged
事件可能會正常工作,但Validating
是更好的選擇。在if
語句的內部,將文本分配給DataGridView中的相應單元格。
'=='是比較運算符,'='是賦值運算符。嘗試'if(textBox3.Text == string.Empty){textBox3.Text =「---」; }' – Equalsk
好的。什麼是問題? – Alex
如果您嘗試(錯誤地)將它分配給一個'TextBox',如何進入'DataGridView'? –