如何将数据从数据库加载到组合框中
本文关键字:组合 加载 数据库 数据 | 更新日期: 2023-09-27 18:32:52
如何从数据库将数据加载到组合框中?我想在表单的组合框中显示支持ID。我使用的代码粘贴在这里。我在窗体加载中调用 BindData()。Ia m 得到异常,因为:无法绑定到新的显示成员。参数名称:新显示成员。我使用的代码是:
public void BindData()
{
SqlConnection con = new SqlConnection(@"server=RSTT2; database = Project ; User Id=sa; Password=PeaTeaCee5#");
con.Open();
string strCmd = "select supportID from Support";
SqlCommand cmd = new SqlCommand(strCmd, con);
SqlDataAdapter da = new SqlDataAdapter(strCmd, con);
DataSet ds = new DataSet();
da.Fill(ds);
cbSupportID.DataSource = ds;
cbSupportID.DisplayMember = "supportID";
cbSupportID.ValueMember = "supportID";
cbSupportID.Enabled = true;
cmd.ExecuteNonQuery();
con.Close();
}
combobox
的DataSource
应该是DataTable
在这种情况下,请尝试以下操作:
cbSupportID.DataSource = ds.Tables[0];
或者更好的是,您应该将数据填充到DataTable
中,而不是像这样填充DataSet
:
DataTable dt = new DataTable();
da.Fill(dt);
//...
cbSupportID.DataSource = dt;
public void BindData()
{
SqlConnection con = new SqlConnection(@"server=RSTT2; database = Project ; User Id=sa; Password=PeaTeaCee5#");
con.Open();
string strCmd = "select supportID from Support";
SqlCommand cmd = new SqlCommand(strCmd, con);
SqlDataAdapter da = new SqlDataAdapter(strCmd, con);
DataSet ds = new DataSet();
da.Fill(ds);
cmd.ExecuteNonQuery();
con.Close();
cbSupportID.DisplayMember = "supportID";
cbSupportID.ValueMember = "supportID";
cbSupportID.DataSource = ds;
cbSupportID.Enabled = true;
}
我希望这有所帮助。
按照这个例子:
using System;
using System.Data;
using System.Data.SqlClient;
using System.Windows.Forms;
namespace ComboBoxData
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
string conStr = @"Server =.'SQLEXPRESS2014; Database=NORTHWND; User Id=sa; Password=******";
SqlConnection conn = new SqlConnection(conStr);
DataSet ds = new DataSet();
string getEmpSQL = "SELECT E.LastName FROM dbo.Employees E;";
SqlDataAdapter sda = new SqlDataAdapter(getEmpSQL, conn);
try
{
conn.Open();
sda.Fill(ds);
}catch(SqlException se)
{
MessageBox.Show("An error occured while connecting to database" + se.ToString());
}
finally
{
conn.Close();
}
comboBox1.DataSource = ds.Tables[0];
comboBox1.DisplayMember = ds.Tables[0].Columns[0].ToString();
}
}
}
CmbDefaultPrinter.DisplayMember = "[table fieldname]";
CmbDefaultPrinter.ValueMember = "[table fieldname]";
CmbDefaultPrinter.DataSource = ds.Tables[0];
CmbDefaultPrinter.Enabled = true;
在数据字段中提及要加载的列名。
在 ASPX 中.cs在页面加载中绑定网格视图。
enter code here
<asp:TemplateField>
<ItemTemplate>
<asp:CheckBox ID="chkSelect" runat="server" />
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="User_Group" HeaderText="UserName" ItemStyle
Width="150px" />