hey, you shouldn't put a textbox.text inside your database query. That will open a huge cue to sql injection
cmd = new SqlCommand("INSERT INTO Login(Admin,Password,Age,Gender,Dateofbirth)VALUES('" +
textBox1.Text + "','" + textBox2.Text + "','"+textBox3.Text+"','"+ Gender +"','"+this.dateTimePicker1.Value.ToString("dd/mm/yyyy hh:mm") +"')", con);
use add parameters instead. just like that link Peter provided you
cmd.CommandText = "INSERT INTO person (birthdate) VALUES(@date)";
cmd.Parameters.Add(new SqlParameter("@date", dateTimePicker.Value.Date));
con.Open();
cmd.ExecuteNonQuery();
con.Close();