如果我創建兩個TextBoxes,可能會有這種情況。獲取另一個TextBox VISUAL C的值的TextBox#
當第一個文本框從輸入被修改時,第二個文本框被設置爲只讀,並且其值將根據您在第一個文本框中寫入的內容進行更新。
這就像當我在這裏發佈在stackoverflow還有一個只讀區域,跟隨我輸入(預覽窗口)。 :)) 謝謝!!!
如果我創建兩個TextBoxes,可能會有這種情況。獲取另一個TextBox VISUAL C的值的TextBox#
當第一個文本框從輸入被修改時,第二個文本框被設置爲只讀,並且其值將根據您在第一個文本框中寫入的內容進行更新。
這就像當我在這裏發佈在stackoverflow還有一個只讀區域,跟隨我輸入(預覽窗口)。 :)) 謝謝!!!
如果它是雙贏應用程序,那麼它非常簡單。試試這個:
private void txtFirstTextBox_TextChanged(object sender, EventArgs e) {
if (string.IsNullOrEmpty(txtFirstTextBox.Text)) {
txtSecondTextBox.Clear();
return;
}
txtSecondTextBox.Text = txtFirstTextBox.Text;
}
希望得到這個幫助。
我應該注意:如果您使用WPF作爲用戶界面,這是一個解決方案。
是的,這就是,如果你有可能易行,例如第一個文本框:
<TextBox x:Name="FirstBox"/>
您可以通過綁定到該文本框的內容:
<TextBox x:Name"SecondBox" Text="{Binding ElementName="FirstBox", Path="Text", UpdateSourceTrigger=PropertyChanged}" IsEnabled="False"/>
而當第一個文本框的變化,第二個應該效仿。這一切都是通過綁定自動處理的,它連接到名爲「FirstBox」的TextBox的Text屬性。通過將IsEnabled屬性設置爲「False」來禁用第二個TextBox
假設它是WPF,而不是WinForms(但他沒有說) –
同意,我編輯了我的答案,在頂部包含該免責聲明。 – Kevek
由於已經有一個WPF解決方案,並且您沒有指定您正在使用的是哪一個,所以我會繼續併發佈一個WinForms解決方案。
幸運的是,這在WinForms中也相對簡單。您只需絲哪些更新第二個文本中的第一個文本框TextChanged事件的處理程序:
private void textBox1_TextChanged(object sender, EventArgs e)
{
textBox2.Text = ((TextBox)sender).Text;
}
我認爲沒有必要使用Cast對象,何時可以通過其名稱訪問?對 ? – saber
@ s.amani - 如果您直接從事件處理程序訪問textBox1,則不需要投射。在這種情況下,我編寫了事件處理程序,以便它可以用於通過sender參數獲取對TextBox的引用的多個文本框。在那種情況下,它肯定需要投射。 –
您的意思是:textBox2.Text = textBox1.Text;是的,這也會起作用。 –
你可以張貼一些代碼,所以我們可以看到,到目前爲止你有什麼? –
此外,這是一個Web應用程序或Windows應用程序? –
是的,這是可能的,但很高興看到你迄今爲止嘗試過的東西。 –