Ich habe ein Formular (F1), wo Benutzer ihre jeweiligen Anmeldeinformationen Benutzername und Passwort angeben.Einfügen von Datensätzen durch Benutzer, der Winforms verbunden ist
Nach einer erfolgreichen Anmeldung werden die Steuerelemente in das Clientformular (F2) verschoben und der Begrüßungsbenutzername in einem Etikett angezeigt.
Client-Formular enthält:
- Etiketten und Textfelder (Name, Adresse, Funktion, ...)
- Knopf
- Datagridview binden an DB ein (Name, Adresse, Funktion. ., UserId)
Jetzt möchte ich zu inser t ein Kunde.
Nach dem Füllen von Textfeldern möchte ich einen Client eine Show hinzufügen, die vom Benutzer hinzugefügt wurde, der verbunden ist.
Beispiel: Wenn ich mit dem Benutzernamen Rose angemeldet habe, fügen Sie einen Client hinzu, in meiner DatagridView, zeigen Sie mir meine Reihe von Einfügen von Rose hinzugefügt.
-Code meiner Anmeldung und vorbei Benutzernamen Client-Formular
private void btnLogin_Click(object sender, EventArgs e)
{
try
{
//textBox2.Text = Encrypt(textBox2.Text);
SqlConnection con = new SqlConnection("Data Source=User-PC\\SQLEXPRESS;Initial Catalog=timar;Integrated Security=True");
SqlDataAdapter sda = new SqlDataAdapter("select Username from [User] where Username='" + textBox1.Text + "' and Password='" + textBox2.Text + "'", con);
DataTable dt = new DataTable();
sda.Fill(dt);
if (dt.Rows.Count == 1)
{
this.Hide();
Client c = new Client(dt.Rows[0][0].ToString());
v.Show();
}
else if (dt.Rows.Count > 1)
{
MessageBox.Show("Nom d'utilisateur et Mot de passe dupliqué !");
}
else
MessageBox.Show("Nom d'utilisateur ou Mot de passe incorrecte !");
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
Hier ist mein Code von Insert:
public Client(string username)
{
InitializeComponent();
lblUser.Text = username;
DisplayData();
FillData();
}
private void button1_Click(object sender, EventArgs e)
{
if ( comboBox2.SelectedValue != null && textBox1.Text != string.Empty && textBox2.Text != string.Empty && textBox4.Text != string.Empty)
{
string cmdStr = "Insert into Client (idUser,name,address,function,telephone,commentaire)values (@idUser,@name,@,address,@function,@telephone,@commentaire)";
SqlConnection con = new SqlConnection("Data Source=User-PC\\SQLEXPRESS;Initial Catalog=timar;Integrated Security=True");
SqlCommand cmd = new SqlCommand(cmdStr, con);
con.Open();
//The problem in the line below how Can I get the id of username,Error cannot convert string Rose to int.
cmd.Parameters.AddWithValue("@idUser",label.Text);
cmd.Parameters.AddWithValue("@name", (comboBox2.SelectedValue));
cmd.Parameters.AddWithValue("@,address", textBox1.Text);
cmd.Parameters.AddWithValue("@function", textBox2.Text);
cmd.Parameters.AddWithValue("@telephone", textBox4.Text);
cmd.Parameters.AddWithValue("@commentaire",txtArchive.Text);
int LA = cmd.ExecuteNonQuery();
con.Close();
MessageBox.Show("Le Client a été ajouter avec succés !","Saisie Rendez-vous", MessageBoxButtons.OK, MessageBoxIcon.Information);
DisplayData();
ClearData();
}
else
{
MessageBox.Show("Vérifier que tous les champs sont remplis !","Erreur",MessageBoxButtons.OK,MessageBoxIcon.Information);
}
}
ich nicht in der Lage bin, um herauszufinden, wie dies zu tun Ich bin sehr neu in C# und versuche zu lernen.
Vielen Dank im Voraus.
Ihre Frage ist unklar, mit welchem Teil genau haben Sie Probleme mit? – Jamiec
Ich erkläre mein Problem in einem Kommentar in meinem Code oben, ich möchte einen neuen Client hinzufügen und möchte wissen, dass von wem hinzugefügt wurde (Benutzer, der verbunden ist = Rose)? –
oooh die eigentliche Frage ist in einem Code-Kommentar - ja, das ist nicht der beste Ort dafür! – Jamiec