データの管理についてさらに読んで調査した後、データセットの MSDN サイトに基づいてコードをやり直しました。しかし、私は思わぬ障害に遭遇しています。クラスレベル内でデータセットを宣言したと思います。ただし、そのデータセットをプルしようとするたびに
DataRow[] drRow = tblEmployee.Select("EmployeeKey = " + TextBox12.Text)
エラーが発生しています:
- 名前「tblEmployees」は現在のコンテキストに存在しません
- 名前 'TextBox12' は現在のコンテキストに存在しません
フォーム内のどこからでも呼び出せるように、クラス レベルで宣言できるようにしたいと考えています。
私はすでにクラス レベルで MSDN サイトを読んでいますが、正直なところ、それは私をかなり混乱させたと思います。
基本的に私が望んでいるのは、データセットが名前のアルファベット順で従業員のリストを提供し、ユーザーがドロップダウンボックスから従業員を選択すると、従業員 ID を選択して textBox12 に表示し、検索を実行することですコードの //comments で定義されたフィールドなど、従業員に表示する残りのデータの tblEmplpoyees の。
誰かがこれを手伝ってくれますか、これが私がコードatmのために持っているものです:
namespace Tempus.Menus
{
public partial class Employees : Form
{
public class myData
{
DataSet[]drRow = tblEmployees.Select("EmployeeKey = " + TextBox12.Text);;
}
public Employees()
{
InitializeComponent();
//Connect to database for Employees Table Headers
SqlConnection myConnection = new SqlConnection(@"Server=server\CHCTEMPUS;Integrated Security=true;" +
"user id=userID;password=password;" +
"Trusted_Connection=yes;" +
"Database=Database;" +
"connection timeout=30");
SqlDataAdapter daEmployees
= new SqlDataAdapter("Select *, Lname +', '+ Fname as LastFirst, Fname +' '+ Lname as FirstLast FROM Employees WHERE Lname IS NOT NULL AND Fname IS NOT NULL", myConnection);
DataSet dsEmployees = new DataSet("Employees");
daEmployees.FillSchema(dsEmployees, SchemaType.Source, "Employees");
daEmployees.Fill(dsEmployees, "Employees");
DataTable tblEmployees;
tblEmployees = dsEmployees.Tables["Employees"];
comboBox1.DisplayMember = "FirstLast";
comboBox1.ValueMember = "employeeNumber";
comboBox1.DataSource = tblEmployees;
try
{ }
catch (Exception e)
{
MessageBox.Show(e.ToString());
}
finally
{
if (myConnection != null)
{
myConnection.Dispose();
}
}
comboBox1.SelectedIndexChanged += comboBox1_SelectedIndexChanged;
comboBox2.SelectedIndexChanged += comboBox2_SelectedIndexChanged;
}
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
if (comboBox1.SelectedIndex != -1)
{
textBox1.Text = string.Empty;
}
{
textBox12.Text = comboBox1.SelectedValue.ToString();
}
}
private void comboBox2_SelectedIndexChanged(object sender, EventArgs e)
{
if (comboBox2.SelectedIndex == -1)
{
textBox1.Text = string.Empty;
}
else
{
textBox1.Text = comboBox2.SelectedItem.ToString();
}
}
private void Employees_Load(object sender, EventArgs e)
{
}
private void label1_Click(object sender, EventArgs e)
{
}
private void textBox1_TextChanged_1(object sender, EventArgs e)
{
//Last Name
}
private void textBox2_TextChanged(object sender, EventArgs e)
{
//First Name
}
private void textBox3_TextChanged(object sender, EventArgs e)
{
//Middle Name
}
private void textBox4_TextChanged(object sender, EventArgs e)
{
//Hire Date
}
private void textBox5_TextChanged(object sender, EventArgs e)
{
//Term Date
}
private void textBox6_TextChanged(object sender, EventArgs e)
{
//Company
}
private void textBox7_TextChanged(object sender, EventArgs e)
{
//Notes
}
private void textBox8_TextChanged(object sender, EventArgs e)
{
//PTO
}
private void textBox9_TextChanged(object sender, EventArgs e)
{
//SNP
}
private void textBox10_TextChanged(object sender, EventArgs e)
{
//Credentials
}
private void textBox11_TextChanged(object sender, EventArgs e)
{
//Employee Full Name (First Last)
}
private void textBox12_TextChanged(object sender, EventArgs e)
{
//Employee ID
}
private void textBox13_TextChanged(object sender, EventArgs e)
{
//Branch
}
private void checkBox1_CheckedChanged(object sender, EventArgs e)
{
if (checkBox1.Checked)
{
// logic here for if the box has now been checked
}
else
{
// what to do if the box has been unchecked
}
}
private void button1_Click(object sender, EventArgs e)
{
Main myNewForm = new Main();
myNewForm.Show();
this.Close();
}
private void button2_Click(object sender, EventArgs e)
{
Reports myNewForm = new Reports();
myNewForm.Show();
this.Close();
}
}
}