TextChanged
This is an event—it occurs when the text is modified in a TextBox
. With it we make a program dependent on the value of a TextBox
when the user types.
We can look up something in a database and display instantly the results. Use TextChanged
with logical tests to make your program responsive and reactive to your users' actions.
First, there are 2 ways to make a TextChanged
event, or any Windows Forms event, in Visual Studio. The easiest way is with the UI in Visual Studio.
TextBox
and focus it to see the correct designer UI. On the right bottom, you should see the Properties pane.TextChanged
appears. Double
-click in the space next to the TextChanged
label.TextChanged
is to type the word "this.TextChanged
+" into your form and then press tab twice.// This is the manual way, which is an alternative to the first way. // Type 'this.TextChanged += ' into your form's constructor. // Then press TAB twice, and you will have a new event handler. this.TextChanged += new EventHandler(Form1_TextChanged);
Here we use TextChanged
to automate changes in a program's UI. Let's say you want to show search results as the user types in a search box.
TextChanged
event set up, and then we will use the Text property to show search results.TextChanged
. All of this code is custom and the functions must be defined.TextChanged
Text value and call a custom function that manages more aspects of the interface
.void textBox1_TextChanged(object sender, EventArgs e) { PopulateGrid(textBox1.Text); } void PopulateGrid(string queryStr) { dataGridView1.DataSource = _journal.GetSearchResults(queryStr); SetStatus(dataGridView1.Rows.Count); // Change status bar (not shown) }
Enabled
You can have a method that will toggle the Enabled
property of various buttons in the form, such as OK and Cancel, depending on whether any items were found.
void textBox1_TextChanged(object sender, EventArgs e)
{
// Just something you may want to do after TextChanged.
openButton.Enabled = TextIsValid(textBox1.Text);
}
TextChanged
is triggered when the user types something into a TextBox
, and the resulting value changes. It is also activated when the program itself changes the TextBox
Text in code.
I recommend using TextChanged
when you need to synchronize parts of the UI together with a Text value. Consider using the Enabled
property along with TextChanged
.
We used the TextChanged
event in Windows Forms. TextChanged
is a powerful and convenient way to automate interactive messages in your application.