C# asp.net文本框选择

C# asp.net文本框选择,c#,asp.net,textbox,C#,Asp.net,Textbox,我有一个标准的asp:textbox,它是可编辑的,我希望能够选择文本的一部分,单击按钮,然后用html标记封装所选文本 例如,文本框包含以下文本: 敏捷的棕色狐狸跳过了懒狗 如果我选择“快速棕色狐狸”并单击按钮,我希望文本成为快速棕色狐狸 如何检测所选文本?使用winforms,您可以使用richtextbox,但在标准asp.net控件中不能使用。它还必须是一个asp:texbox控件。Telerik有一个非常好的富文本框编辑器 Telerik有一个非常好的富文本框编辑器 您可以使用CKEd

我有一个标准的asp:textbox,它是可编辑的,我希望能够选择文本的一部分,单击按钮,然后用html标记封装所选文本

例如,文本框包含以下文本:

敏捷的棕色狐狸跳过了懒狗

如果我选择“快速棕色狐狸”并单击按钮,我希望文本成为快速棕色狐狸


如何检测所选文本?使用winforms,您可以使用richtextbox,但在标准asp.net控件中不能使用。它还必须是一个asp:texbox控件。

Telerik有一个非常好的富文本框编辑器

Telerik有一个非常好的富文本框编辑器

您可以使用CKEditor作为高级html编辑器,而不是textarea

您可以使用CKEditor作为高级html编辑器,而不是textarea

我很少推荐这样做,因为控件有点笨重,但您可以使用。只需按照网站上的说明安装工具包,并在项目中包含DLL

工具箱有一个扩展程序,可以应用于普通的
。有关功能,请参见链接页面上的示例。基本上,您所要做的就是将
HTMLEditorExtender
标记指向现有的
TextBox
控件

以下是该页示例的简化版本:

<ajaxToolkit:HtmlEditorExtender ID="HtmlEditorExtender1" 
    TargetControlID="yourTextBoxID" DisplaySourceTab="true" 
    runat="server"/>
    <Toolbar> 
        <ajaxToolkit:Bold />
        <ajaxToolkit:Italic />
        <ajaxToolkit:Underline />
        <ajaxToolkit:StrikeThrough />
        <ajaxToolkit:RemoveFormat />
        <ajaxToolkit:BackgroundColorSelector />
        <ajaxToolkit:ForeColorSelector />
        <ajaxToolkit:FontNameSelector />
        <ajaxToolkit:FontSizeSelector />
    </Toolbar>
</ajaxToolkit:HtmlEditorExtender>


请注意,您需要将
TargetControlID=“yourTextBoxID”
中的“yourTextBoxID”设置为您希望扩展器应用到的文本框控件的ID。

我很少推荐这样做,因为控件有点笨重,但您可以使用。只需按照网站上的说明安装工具包,并在项目中包含DLL

工具箱有一个扩展程序,可以应用于普通的
。有关功能,请参见链接页面上的示例。基本上,您所要做的就是将
HTMLEditorExtender
标记指向现有的
TextBox
控件

以下是该页示例的简化版本:

<ajaxToolkit:HtmlEditorExtender ID="HtmlEditorExtender1" 
    TargetControlID="yourTextBoxID" DisplaySourceTab="true" 
    runat="server"/>
    <Toolbar> 
        <ajaxToolkit:Bold />
        <ajaxToolkit:Italic />
        <ajaxToolkit:Underline />
        <ajaxToolkit:StrikeThrough />
        <ajaxToolkit:RemoveFormat />
        <ajaxToolkit:BackgroundColorSelector />
        <ajaxToolkit:ForeColorSelector />
        <ajaxToolkit:FontNameSelector />
        <ajaxToolkit:FontSizeSelector />
    </Toolbar>
</ajaxToolkit:HtmlEditorExtender>


请注意,您需要将
TargetControlID=“yourTextBoxID”
中的“yourTextBoxID”设置为您希望扩展器应用到的TextBox控件的ID。

为什么您对“必须是asp:TextBox”如此确定?我认为这是不可能的。我想这不一定是,但它是gridview编辑模板的一部分,不确定任何东西是否能正常工作,然后搜索一些html富文本编辑器或尝试使用contentEditable属性作为div。很遗憾,我无法绑定到div,只有eval可以工作,我得到这个错误:对Bind的调用必须分配给模板中控件的属性。我需要绑定,因为我需要将div中的文本发送到DBMinor-nitpick:你真的应该用
,而不是
=)来包围,为什么你对“必须是asp:textbox”这么确定?我认为这是不可能的。我想这不一定是,但它是gridview编辑模板的一部分,不确定任何东西是否能正常工作,然后搜索一些html富文本编辑器或尝试使用contentEditable属性作为div。很遗憾,我无法绑定到div,只有eval可以工作,我得到这个错误:对Bind的调用必须分配给模板中控件的属性。我需要绑定,因为我需要将div中的文本发送到DBMinor nitpick:您应该真正使用
,而不是
=)