0

Скажите пожалуйста, как редактировать и самое главное - сохранять текстбоксы, выбранных пользователей?

Так выглядит процедура добавления

private void Add(User user)
    {
        ListViewItem list = new ListViewItem(user.Username);
        list.Tag = user;
    lvUsers.Items.Add(list);
}

Так выглядит кнопка сохранения пользователей

private void btnSerialize_Click(object sender, EventArgs e)
    {
        Users users = new Users();
        foreach (ListViewItem item in lvUsers.Items)
        {
            if (item.Tag != null)
            {
                users.UsersList.Add((User)item.Tag);
            }
        }
        SerializeXML(users);
    }

Так выглядит сама форма. Слева добавленные пользователи. Можем выбрать любого, и справа выведутся его данные. Логин и поле с данными. И вот нужно данные справа, редактировать и сохранять обратно в файл. Файл xml. введите сюда описание изображения

Сейчас же, при нажатии на Сохранить, конечно ничего не происходит. И я не могу понять, как сохранять данные текстбоксов.

private void btnAdd_Click(object sender, EventArgs e)
    {
        if (string.IsNullOrEmpty(tbNukeCode.Text))
        {
            errorProvider1.SetError(tbNukeCode, "Не заполнено поле!");
        }
        else if (string.IsNullOrEmpty(tbUsername.Text))
        {
            errorProvider1.SetError(tbUsername, "Не заполнено поле!");
        }
        else
        {
            User user = new User(tbUsername.Text, tbNukeCode.Text);
            Add(user);
            ClearInput();
        }
    }

Так выглядит код вывода списка пользователей в текстбоксы

        private void lvUsers_SelectedIndexChanged(object sender, EventArgs e)
    {
        if (lvUsers.SelectedItems.Count == 1)
        {
            User user = (User)lvUsers.SelectedItems[0].Tag;
        if (user != null)
        {
            tbUsername.Text = user.Username;
            tbNukeCode.Text = user.NukeCode;
        }
    }
    else if (lvUsers.SelectedItems.Count == 0)
    {
        ClearInput();
    }
}

Espoit
  • 43
  • 6
  • Попробуйте BindingList https://ru.stackoverflow.com/a/1199692/373567 – aepot Aug 26 '21 at 09:01
  • На даблклик по списку повесьте обработчик, который загрузит данные в текстбоксы, по кнопке сохранить верните данные в список. – aepot Aug 26 '21 at 09:03
  • 1
    @aepot Спасибо большое. Все оказалось через чур просто. Ваш второй коммент помог – Espoit Aug 26 '21 at 09:20
  • Я хотел ответить на второй ваш вопрос, но вы его удалили. Зачем удалили? Если сами нашли решение - опубликуйте ответ. Если решение не найдено, ждите, отвечают не всегда в первый же день. Если решение нужно позарез, не просто ждите, а обновляйте вопрос, отредактировав его. – Alexander Petrov Sep 02 '21 at 15:32
  • @AlexanderPetrov восстановил – Espoit Sep 12 '21 at 08:03

0 Answers0