我正在使用WCF服务将我的数据库表加载到下拉列表(combobox)。如何将所选值检索到表中的相应值,因此当我选择一个项目时,相应的int
将被插入到表中?
以下是桌面层的代码:
private void Save()
{
if (ValidateForm())
{
try
{
IHotRes res = new MHotServiceProvider().Service;
Customer customer = res.SaveCustomer(txtFirstName.Text, txtLastName.Text, dtpDOB.Value, txtAddress.Text, txtPostCode.Text, txtPhone1.Text, txtPhone2.Text, txtEmailAddress.Text, ddlGender.SelectedIndex); // all other work just don't know how to get the ddlGender
MessageBox.Show("Data has been inserted to the table");
}
catch (Exception ex)
{
MessageHelper.ShowErrorMessage(ex);
}
}
}
如果您需要更多信息或代码示例,请在下面发表评论。 (也许程序需要编辑,如果是这样,请告诉我,我将添加程序代码)。
编辑:这就是我填写ddlGender的方式:
IHotRes res = new MHotServiceProvider().Service;
List<Genders> gender = res.GetGenderList();
ddlGender.ValueMember = "GenderId";
ddlGender.DisplayMember = "Gender";
ddlGender.DataSource = gender;
答案 0 :(得分:2)
因为您正在使用
ddlGender.ValueMember = "GenderId";
调用SelectedValue属性可为您提供选定的性别ID。
在我的下面的代码中,我假设GenderId是int。如果没有,请相应更改类型。
Customer customer = res.SaveCustomer(txtFirstName.Text, txtLastName.Text, dtpDOB.Value, txtAddress.Text, txtPostCode.Text, txtPhone1.Text, txtPhone2.Text, txtEmailAddress.Text, (int)ddlGender.SelectedValue);