I have the following method. I am trying to make it so that when a user clicks the 'Add' button, the newly added user is selected in the name comboBox.
private void AddUser()
{
string userQueryString = "SELECT[User_ID], [User_First_Name], [User_Surname] FROM[EquipmentTracker].[dbo].[Users]";
SqlConnection conn = new SqlConnection(constring);
SqlCommand commandRecipient = new SqlCommand(userQueryString, conn);
conn.Open();
SqlDataReader reader = commandRecipient.ExecuteReader();
while (reader.Read())
{
User addUser = new User();
addUser.userID = (int)reader["User_ID"];
addUser.userName = (string)reader["User_First_Name"] + " " + (string)reader["User_Surname"];
comboRecipient.Items.Add(addUser);
}
}
Previously, before I created a method to prevent re-writing code, this is how I had this working:
private void btnNewUser_Click(object sender, EventArgs e)
{
Form2 newUser = new Form2();
if(newUser.ShowDialog() == DialogResult.OK)
{
SqlConnection conn = new SqlConnection(constring);
conn.Open();
SqlCommand commandRecipient = new SqlCommand("SELECT [User_ID], [User_First_Name], [User_Surname] FROM [EquipmentTracker].[dbo].[Users]", conn);
comboRecipient.Items.Clear();
using (SqlDataReader reader = commandRecipient.ExecuteReader())
{
while (reader.Read())
{
int recipientID = (int)reader["User_ID"];
string recipient = (string)reader["User_First_Name"] + " " + (string)reader["User_Surname"];
comboRecipient.Items.Add(recipientID);
comboRecipient.Items.Add(recipient);
Console.WriteLine(String.Format("{0}", reader[0]));
}
}
comboRecipient.SelectedItem = newUser.newUser;
}
}
Now, I am just calling the method here:
private void btnNewUser_Click(object sender, EventArgs e)
{
Form2 newUser = new Form2();
if(newUser.ShowDialog() == DialogResult.OK)
{
AddUser();
comboRecipient.SelectedItem = newUser.newUser;
}
}