Здравствуйте!
Я делаю программу - подобие банковского клиента для десктопа. И при её разработке возникло несколько моментов, которые я хотел бы уточнить:
1. Имеется форма пользователя, где он может ввести свое имя и фамилию и потом сохранить эти данные в БД, но также имеется поле для фотографии, при нажатии кнопки открывается проводник и через него в picturebox на форме выбранное изображение добавляется. Каким образом можно реализовать сохранение изображения? Я читал, что сохранять изображения в БД не лучший вариант, но можно хранить ссылки на изображения и как это реализовать?
2. По изначальной задумке, если пользователь ввел имя или фамилию и сохранил это в БД, то по повторному открытию формы эти же имя и фамилия должны появиться в тех же полях, где они были введены. Как это реализовать?
3. Есть форма, где пользователь может посмотреть историю переводов. Как сохранить в таблицу дату и время, а также вывести всю таблицу на форму?
4. Если в textbox я ввел цифру то как сделать так, чтобы эта цифра считалась как цифра, как число?
Здесь - код формы, про которую я писал в 1 и 2 пункте:
public FormUser()
{
InitializeComponent();
}
private void Upload_Click(object sender, EventArgs e)
{
OpenFileDialog openFileDialog1 = new OpenFileDialog();
Controls.Add(pictureBox1);
openFileDialog1.ShowDialog();
Image image = Image.FromFile(openFileDialog1.FileName);
pictureBox1.Image = image;
}
private void WatchHistory_Click(object sender, EventArgs e)
{
Hide();
new FormHistory().Show();
}
private void MakePayment_Click(object sender, EventArgs e)
{
Hide();
new FormPayment().Show();
}
private void Save_Click(object sender, EventArgs e)
{
if ((NameField.Text == "") && (SurnameField.Text == "") && (pictureBox1.Image == null) && (LoginField.Text == ""))
{
MessageBox.Show("И что мне надо сохранять, если везде пусто?!", "Ошибка!", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
SQLiteConnection connect = new SQLiteConnection("Data source = accounts.db");
connect.Open();
try
{
SQLiteCommand command = new SQLiteCommand($"UPDATE users SET Name = '{NameField.Text}', Surname = '{SurnameField.Text}' WHERE Login = '{LoginField.Text}'", connect);
command.ExecuteNonQuery();
}
finally
{
MessageBox.Show($"Изменения сохранены!");
connect.Close();
}
}
Если будут конкретные примеры с кодом то будет здорово)