PS: I already have a TextBox & a DataGridView on the form.
public partial class LookupTable : Form { // This will be the data source of the DataGridView. BindingSource oBindingSource = new BindingSource(); CallerDTO caller = null; public LookupTable(DataTable sourceData, CallerDTO sourceDTO) { InitializeComponent(); caller = sourceDTO; // Assign the DataTable to our BindingSource object. oBindingSource.DataSource = sourceData; } private void LookupTable_Load(object sender, EventArgs e) { toolTipFind.SetToolTip(textBoxFind, "You can search by Name or by Code."); // Assign the BindingSource object to the DataGridView. dataGridViewResult.DataSource = oBindingSource; } private void textBoxFind_TextChanged(object sender, EventArgs e) { TextBox oTextBox = sender as TextBox; // Here is the key of the whole "Search As You Type" function. oBindingSource.Filter = "NAME LIKE '%" + oTextBox.Text + "%' OR CODE LIKE '%" + oTextBox.Text + "%'"; } private void dataGridViewResult_CellContentDoubleClick(object sender, DataGridViewCellEventArgs e) { // Here I need to send back the value that user clicked on. caller.StringResult = dataGridViewResult.Rows[e.RowIndex].Cells[1].Value.ToString(); // This is just a public method for me to do something after user clicking. caller.CallerLoad(); this.Close(); } }
Result:
No comments:
Post a Comment