富文本框值存储在数据库中

Posted

技术标签:

【中文标题】富文本框值存储在数据库中【英文标题】:rich text box value store in database 【发布时间】:2020-12-07 07:30:28 【问题描述】:

我有一个名称为placeofstudent1 的富文本框。我想将富文本框中写入的任何内容存储在一个名为 Place 的变量中,以便我可以将该信息传递到数据库中。

try
    

        string name = nameofstudent.Text;
        string father = fatherofstudent.Text;
        string mother = motherofstudent.Text;
        string id = stud_id.Text;
        string gender;
        if (male.IsChecked == true)
        
            gender = "M";
        
        else
            gender = "F";

        string studentAge = ageofstudent.Text;

        DateTime dt = Convert.ToDateTime(dob.Text);
        int Age = Convert.ToInt16(ageofstudent.Text);
                   
        string Place = placeofstudent1.Text;
    
        connect();
        con.Open();
    
        string saved = "insert into student_details (student_id,student_name,father_name,mother_name,gender,age,dob,place,class)values('" + id + "', '" + name + "','" + father + "','" + mother + "','" + gender + "','" + Age + "','" + dt + "','" + Place + "','" + x + "')";
    
        SqlCommand cmd = new SqlCommand(saved, con);
    
        cmd.ExecuteReader();
    
        con.Close();

如果我尝试使用.Text 填充变量Place,它不起作用。我可以使用什么方法来实现这一点?感谢您的帮助。

【问题讨论】:

您使用了错误的控件。目前您使用的是 WinForms 控件而不是 WPF 控件。您期望富文本内容吗?我对此表示怀疑。对于姓名和其他人员相关数据,您不使用格式化文本。请改用普通的 TextBox,它更轻量级且更易于处理。 我被告知要使用富文本框,这就是我使用它的原因。另外,我想学习如何使用它。 这是正确的System.Windows.Controls.RichTextBox(注意不同的命名空间)。您会注意到它没有 Text 属性。您必须手动将内容(RichTextBox.Document,即FlowDocument)转换为字符串。 【参考方案1】:

您使用了错误的控件。目前您使用的是 WinForms 控件而不是 WPF 控件。

这是正确的System.Windows.Controls.RichTextBox(注意不同的命名空间)。您会注意到 WPF 实现没有Text 属性,而是Document 属性。 您必须手动将内容(RichTextBox.Document,即FlowDocument)转换为字符串。

<Window>
  <RichTextBox x:Name="MyRichTextBox" />
</Window>


var richTextBoxContentRange = new TextRange(
  this.MyRichTextBox.Document.ContentStart, 
  this.MyRichTextBox.Document.ContentEnd);

string richTextBoxText = richTextBoxContentRange.Text;

【讨论】:

我尝试在我的参考文献中找到 System.Windows.Controls.RichTextBox,但我找不到。 你有 XAML 代码吗?您确定您正在处理 WPF 项目吗?您的视图是窗口还是表单?请您发表一下您的看法吗? 我正在使用 WPF,我的视图是窗口。我不知道如何展示我的观点^^' 但是您必须能够使用该控件。默认情况下,所有框架控件都可用。我只是要求你展示你的 XAML 代码。我感觉你的目标是错误的框架。首先从您的项目中删除所有 WinForms 引用。如果还是不行,就新建一个工程或者Window文件,从那里开始。

以上是关于富文本框值存储在数据库中的主要内容,如果未能解决你的问题,请参考以下文章

使用ivx中富文本组件的经验总结

django中富文本编辑器KindEditor的基本使用

Android中富文本用法包括点击事件处理

Android中富文本用法包括点击事件处理

微信原生小程序中富文本组件(rich-text)如何实现图片预览(wx.previewImage)?

Android中富文本RichText框架的使用