1

我有“学生”和“课程”的数据库。如果学生完成一门课程,他将获得“成就”。可以一次打印所有学生的成就。在这里我没有问题。

问题是当我想做一个可定制的成就论文(字体、颜色、位置、图像)时。在 Windows 窗体中,有RichTextEdit,因此很容易自定义。

但是如何在 ASP.NET 中做到这一点?像 tinyMCE 这样的编辑器可以与 ASP.NET 集成吗?我可以将信息发送到 tinyMCE(或其他编辑器)以将一些子字符串(例如 {student-name} {course-name})更改为数据库中的指定文本吗?

4

1 回答 1

1

听起来AJAX Control Toolkit富文本解决方案对您很有用:HTMLEditorExtender. 它易于使用,并且与 Visual Studio 的集成相当顺利。

您所要做的就是将扩展器附加到TextBox控件。有关详细信息,请参阅我上面链接到的文档页面,但基本上您只需要一个TextBox然后是扩展器标记。确保在扩展器标记中,将“TargetControlID”属性设置为要用作“富文本框”的 TextBox 的 ID。

<asp:TextBox runat="server" ID="myTextBox"></asp:TextBox>
<ajaxToolkit:HtmlEditorExtender ID="HtmlEditorExtender1" 
    TargetControlID="myTextBox" DisplaySourceTab="true" 
    runat="server"/>
    <Toolbar> 
        <ajaxToolkit:Undo />
        <ajaxToolkit:Redo />
        <ajaxToolkit:Bold />
        <ajaxToolkit:Italic />
        <ajaxToolkit:Underline />
        ...
        <!--And many more properties, see the linked documentation for more-->
        ...
    </Toolbar>
</ajaxToolkit:HtmlEditorExtender>

请注意,TextBox控件的 ID 是“myTextBox”,而 TargetControlIDHTMLEditorExtender也是“myTextBox”。

注意:就性能而言,AJAX 控件工具包通常被认为有点“笨重”或“笨拙”(我通常推荐 jQuery 解决方案),但它真的很容易使用(尤其是对于初学者),并且对于小项目工作正常。

于 2012-05-15T12:42:19.600 回答