Задать вопрос
@White_Bambie

Как хранить и выводить записи с текстом из БД с поддержкой форматирования?

На форме имеется следующие объекты: richTextBox, 2 Button и ListBox.
в Listbox выбирается запись.
private void MyListBox_SelectedIndexChanged(object sender, EventArgs e)
        {
            Patient_id = Convert.ToInt32(MyListBox.SelectedIndex);

            MySqlConnection con = new MySqlConnection(AppSetting.ConnectonString());
            MySqlCommand cmd;
            cmd = con.CreateCommand();
            cmd.CommandText = "SELECT * FROM patients WHERE id='" + MyListBox.SelectedValue + "';";

            try
            {
                con.Open();

                MySqlDataReader sdr = cmd.ExecuteReader();

                // Загружаем данные
                while (sdr.Read())
                {
                    string sNaz = sdr.GetString("Naz");
                    richTextBox1.Text = sNaz;
                }

                con.Close();
            }
            catch (Exception)
            {
                MessageBox.Show("Подключение к серверу отсутствует");
            }
        }

В richTextBox вводится текст, посредством Button1 появляется возможность форматировать выделенный текст.
private void button1_Click(object sender, EventArgs e)
{
richTextBox1.SelectionFont = new Font(richTextBox1.SelectionFont, FontStyle.Bold ^ richTextBox1.SelectionFont.Style);
richTextBox1.Select();
}

-
По нажатию Button2 текст из richtextbox1 записывается в БД.
private void button2_Click(object sender, EventArgs e)
        {
            if (Patient_id != -1) // Если выбран пациент из списка
            {
                MySqlConnection con = new MySqlConnection(AppSetting.ConnectonString());

                con.Open();

                MySqlCommand cmd;

                cmd = con.CreateCommand();
                cmd.CommandText = "UPDATE patients set Naz=@Naz WHERE id='" + MyListBox.SelectedValue + "';";

                cmd.Parameters.AddWithValue("@Naz", richTextBox1.Text);

                cmd.ExecuteNonQuery();

                con.Close();

                MessageBox.Show("Пациент обновлен", "Сообщение");
            }
            else
            {
                MessageBox.Show("Выберите пациента", "Сообщение");
            }
        }


-
Как сохранить форматированный текст и вывести его в будущем из БД в richtextbox?
  • Вопрос задан
  • 331 просмотр
Подписаться 1 Простой Комментировать
Решения вопроса 2
В richTextBox1.Rtf хранит текст со всем форматированием. Сохранят и загружать нужно его для сохранения форматирования
Ответ написан
mindtester
@mindtester Куратор тега C#
http://iczin.su/hexagram_48
а в чем трудности?
RichTextBox.Text точно RichTextBox.Rtf содержит текст в формате RTF то есть со всем оформлением и самим текстом. сохраняете как текстовую строку, и так же восстанавливаете
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы