yoavarviv Ответов: 2

Ошибка состояния подавления CS7036 : не задан аргумент, соответствующий требуемому формальному параметру


Привет, ребята, мне нужна помощь в исправлении моего кода, я получаю эту ошибку: Ошибка подавления состояния CS7036 нет аргумента, соответствующего требуемому формальному параметру "пароль" из " Form3.Form3(string)", я программирую только около недели, так что я довольно новый, я пытаюсь сделать систему регистрации и входа в систему, а не ту, которая сохраняет информацию на серверах и т. д. просто обычную базовую, поэтому я пытаюсь передать пароль и имя пользователя, это код для регистрационной формы, с которой у меня есть все мои проблемы.
(form3= регистрационной формы Form2 = войти)
спасибо всем, кто пытается ;)

Что я уже пробовал:

namespace Login_And_Registration
{
    public partial class Form3 : Form
    {
        public string username,password,repassword;
      
        public Form3(string password)
        {
            InitializeComponent();
            password == textBox2.Text;
 

        }

       

        private void button1_Click(object sender, EventArgs e)
        {
            string password = textBox2.Text;
            string username = textBox1.Text;
            string repassword = textBox3.Text;
            if (password == repassword)
            {
                MessageBox.Show("Successfully Registered");
                Form2 newwin = new Form2();

                Form3 newwindow = new Form3();
                this.Close();
                newwin.Show();
            }
            else
            {
                MessageBox.Show("Passwords Do Not Match OR Not All Required Fields Filled");
                this.Close();
                Form3 newwindow3 = new Form3();
                newwindow3.Show();
            }
            Form2 passvalue = new Form2(password);

[no name]

Пожалуйста, дайте соответствующее название вашему вопросу. Я отредактировал ваш заголовок для вас. Выберите заголовок, который отражает вашу проблему или вопрос. Очевидно, что вам нужна помощь, иначе вы бы не писали здесь.

2 Ответов

Рейтинг:
9

OriginalGriff

Чтобы добавить к тому, что говорит Ричард,

public Form3(string password)
        {
            InitializeComponent();
            password == textBox2.Text;
 

        }

"=="- это сравнение, а не задание.
"=" присваивает значение.
public Form3(string password)
        {
            InitializeComponent();
            password = textBox2.Text;
 

        }


phil.o

Но тогда какой смысл присваивать параметру значение текстового поля? Должно быть наоборот, но это только вызывает еще больше странностей :)

yoavarviv

Огромное спасибо

Рейтинг:
13

Richard Deeming

Цитата:
public Form3(string password)
...
Form3 newwindow = new Form3();
Единственный конструктор для вашего класса требует одного строкового параметра. Вы не указали этот параметр.

Поскольку вы все равно не делаете ничего значимого с параметром, самое простое решение-удалить параметр из конструктора.
public Form3()
{
    InitializeComponent();
}