Вы должны указать, какое соединение использовать в вашей команде.
cmd = New SqlCommand("select username,password from login where
username='" + TextBox1.Text + "'and password'" + TextBox2.Text + "' ", con)
Обратите внимание, что вы объединяете строку для построения SQL-запроса. Это ОЧЕНЬ ненадежно. Это приводит к инъекции SQL! Пожалуйста, как минимум двойные кавычки в строковой переменной и проверьте переменные int, которые являются переменными. Но я настоятельно рекомендую вам использовать параметризованную переменную (см. Sp_executeSql).
cmd = New SqlCommand("select username,password from login where
username='" + TextBox1.Text.replace("'", "''") + "'and password'" + TextBox2.Text.replace("'", "''") + "' ", con)