我有一个面向员工的Windows窗体应用程序,当我选择员工姓名时 从ComboBox中,文本框应填充所选员工的数据。我记得像自动回发属性,但我在Visual Studio中找不到它。
提前致谢。
答案 0 :(得分:2)
如果您使用的是WinForms,那么就没有AutoPostBack
这样的东西,那就是ASP.NET。在您的情况下使用SelectedIndexChanged
- 事件。在这种情况下,您可以获取所选项目,并根据此项目获取员工的相应数据并填写文本框。
更多信息:
的伪代码:
private void YourComboBox_SelectedIndexChanged(object sender, EventArgs e)
{
string item = (string)YourComboBox.SelectedItem;
//Fetch data (dummy method)
Employee emp = GetDataByName(item);
//Write to TextBox
SomeTextBox.Text = emp.Function;
}
答案 1 :(得分:0)
Winforms提供以下事件:
SelectedIndexChanged在SelectedIndex属性具有时发生 改变。 SelectedValueChanged在SelectedValue时发生 财产变化。
您可以在此处详细了解它们:MSDN Combobox.
答案 2 :(得分:0)
您应该使用Combobox的SelectedIndexChanged事件。通常,当您双击表单上的ComboBox时,您将获得它。
为了存储带有值(假设ID)的文本并将其添加到Combobox,请按照以下答案操作:
例如:
// On load event, add the items to the ComboBox following the above link I have posted...
private void cmbEmployees_SelectedIndexChanged(object sender, EventArgs e)
{
int EmployeeID = ((KeyValuePair<string, string>)cmbEmployees.SelectedItem).Value;
var Employee = SomeClass.getEmployeeByID(EmployeeID); // Write a class or a method to get Employee as an object...
txtName.Text = Employee.Name;
txtEmail.Text = Empolyee.Email;
}
希望这会给你一个想法!