C# 基于C中的数据表填充表单值#
我返回一行的数据表,然后设置数据表的主键,然后查找该列。然后,我想将从C# 基于C中的数据表填充表单值#,c#,.net,winforms,sqlite,datatable,C#,.net,Winforms,Sqlite,Datatable,我返回一行的数据表,然后设置数据表的主键,然后查找该列。然后,我想将从company列返回的值赋给txtCompany 以下是我尝试过的: private void comboBox1_SelectedItem(object sender, EventArgs e) { MessageBox.Show("Populating form"); m_dbConnection.Open(); DataTable dt = new DataTable(); SQLite
company
列返回的值赋给txtCompany
以下是我尝试过的:
private void comboBox1_SelectedItem(object sender, EventArgs e)
{
MessageBox.Show("Populating form");
m_dbConnection.Open();
DataTable dt = new DataTable();
SQLiteCommand command = m_dbConnection.CreateCommand();
command.CommandText = "select * from rdpdirectory where company = @company order by company asc";
//
command.Parameters.Add(new SQLiteParameter("@company", comboBox1.SelectedText));
SQLiteDataAdapter db = new SQLiteDataAdapter(command);
db.Fill(dt);
//return dt;
DataColumn[] keyColumns = new DataColumn[1];
keyColumns[0] = dt.Columns["company"];
dt.PrimaryKey = keyColumns;
DataRow row = dt.Rows.Find("company");
if (row != null)
txtCompany.Text = row["company"].ToString();
}
我用以下代码解决了这个问题:
private void comboBox1_SelectedItem(object sender, EventArgs e)
{
MessageBox.Show("Populating form");
m_dbConnection.Open();
DataTable dt = new DataTable();
SQLiteCommand command = m_dbConnection.CreateCommand();
command.CommandText = "select * from rdpdirectory where company = @company order by company asc";
//
command.Parameters.Add(new SQLiteParameter("@company", comboBox1.SelectedText));
SQLiteDataAdapter db = new SQLiteDataAdapter(command);
db.Fill(dt);
//return dt;
DataColumn[] keyColumns = new DataColumn[1];
keyColumns[0] = dt.Columns["company"];
dt.PrimaryKey = keyColumns;
DataRow row = dt.Rows[0];
txtCompany.Text = row["company"].ToString();
txtServer.Text = row["server"].ToString();
txtUserName.Text = row["username"].ToString();
txtPassword.Text = row["password"].ToString();
}
有人能给我一个更好的方法吗??