这是sql to combobox中的retrive两个字段的函数: 代码:
public void FillCmbKala()
{
cmbKala.Items.Clear();
objCon.Connecting();
string SQL = "SELECT [kID],[kName] FROM tblKala ORDER BY kName";
DataSet ds = new DataSet();
using (SqlConnection cn = new SqlConnection(objCon.StrCon))
{
using (SqlDataAdapter adapter = new SqlDataAdapter(SQL, cn))
{
cn.Open();
try
{
adapter.Fill(ds);
}
catch (SqlException e)
{
MessageBox.Show("There was an error accessing your data of 'Kala'. DETAIL: " + e.ToString());
}
finally
{
cn.Close();
}
}
}
cmbKala.DataSource = ds.Tables[0];
cmbKala.DisplayMember = "kName";
cmbKala.ValueMember = "kID";
}
Run Code Online (Sandbox Code Playgroud)
当我使用组合框返回System.Data.DataRowView!
例如 :
string str= cmbKala.SelectedItem;
Run Code Online (Sandbox Code Playgroud)
结果是: str = System.Data.DataRowView
这是MSDN参考.
作为SelectedItem返回Object.它返回选中的特定行对象.以下是您将获得价值的方式:
DataRowView oDataRowView = cmbKala.SelectedItem as DataRowView;
string sValue = string.Empty;
if (oDataRowView != null) {
sValue = oDataRowView.Row["kName"] as string;
}
Run Code Online (Sandbox Code Playgroud)
小智 5
DataRowView dv = (DataRowView)comboBox1.SelectedItem;
string s = (string)dv.Row["kName"];
int m1 = (int)dv.Row["kID"];
Run Code Online (Sandbox Code Playgroud)