Telerik is a leading vendor of ASP.NET AJAX, ASP.NET MVC, Silverlight, WinForms and WPF controls and components, as well as .NET Reporting, .NET ORM , .NET CMS, Code Analysis, Mocking, Team Productivity and Automated Testing Tools. Building on its expertise in interface development and Microsoft technologies, Telerik helps customers build applications with unparalleled richness, responsiveness and interactivity. Telerik products help thousands of companies to be more productive and deliver reliable applications under budget and on time.
Version Q2 2011 released 07/12/2011
select

Spell / Spellchecking Selections



Select some text and click "Spellcheck".

  • Spellchecking a text selection is merely a matter of defining the appropriate text source implementation.  In this example we define the TextSource's get_text() method to obtain the text from the currently selected text in the textarea.   set_text() replaces the selection with the corrected text.

Source Code

C# VB.NET
Show code in new window Demo isolation steps
  • <%@ page codefile="DefaultCS.aspx.cs" inherits="Telerik.Web.Examples.Spell.SelectionCheck.DefaultCS" language="c#" autoeventwireup="true" %>

    <%@ register tagprefix="telerik" namespace="Telerik.Web.UI" assembly="Telerik.Web.UI" %>
    <%@ register tagprefix="qsf" namespace="Telerik.QuickStart" %>
    <%@ register tagprefix="qsf" tagname="Header" src="~/Common/Header.ascx" %>
    <%@ register tagprefix="qsf" tagname="HeadTag" src="~/Common/HeadTag.ascx" %>
    <%@ register tagprefix="qsf" tagname="Footer" src="~/Common/Footer.ascx" %>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <qsf:headtag runat="server" id="Headtag1"></qsf:headtag>
    </head>
    <body class="BODY">
        <form runat="server" id="mainForm" method="post">
            <qsf:header id="Header1" runat="server" navigationlanguage="CS"></qsf:header>
            <telerik:RadScriptManager ID="RadScriptManager1" runat="server">
            </telerik:RadScriptManager>

            <script type="text/javascript">
            //<![CDATA[
                function TextInterface(controlRef)
                {
                    //we need to save the values since selection might be lost when the spell check window opens
                    var textboxText = null;
                    var range = null;
                    var selStart = 0;
                    var selEnd = 0;
                    
                    this.get_text = function()
                    {
                        //if this is the first time the function is called, get the selected text
                        if (null == textboxText)
                        {
                            var tbRef = controlRef;
                            if (tbRef.selectionEnd - tbRef.selectionStart)
                            {
                                selStart = tbRef.selectionStart;
                                selEnd = tbRef.selectionEnd;
                                textboxText = tbRef.value.substring(selStart, selEnd);
                            }
                            else if (document.selection)
                            {
                                tbRef.setActive();
                                range = document.selection.createRange();
                                textboxText = range.text;
                            }
                            else textboxText = "";
                        }
                        return textboxText;
                    }
                    
                    this.set_text = function(text)
                    {
                        //called after spell check is finished
                        var tbRef = controlRef;
                        if ((selEnd - selStart) && tbRef.value && tbRef.value.length >= selEnd)
                        {
                            tbRef.value = tbRef.value.substring(0, selStart) + text + tbRef.value.substring(selEnd, tbRef.value.length);
                        }
                        else if (document.selection)
                        {
                            if (tbRef.setActive)
                                tbRef.setActive();
                            if (!range) range = document.selection.createRange();
                            range.select();
                            range.text = text;
                        }
                    }
                }

                function spellCheck()
                {
                    var source = new TextInterface($get("textBox1"));
                    try
                    {
                        var text = source.get_text();
                    }
                    catch (selectionError)
                    {
                        alert("Could not get selected text.");
                        return;
                    }
                    
                    var spell = GetRadSpell('<%= spell1.ClientID %>');
                    
                    spell.set_textSource(source);
                    spell.startSpellCheck();
                }
                //]]>
            </script>

            <table>
                <tr>
                    <td>
                        <textarea id="textBox1" rows="5" cols="50">Thisz is a server side TextBox with some delibirate mistakees.</textarea>
                        <br />
                        <telerik:radspell id="spell1" runat="server" buttontype="None" />
                        <button onclick="spellCheck(); return false;" class="Button">
                            Spellcheck</button>
                        <br />
                        Select some text and click "Spellcheck".
                    </td>
                </tr>
            </table>
            <qsf:footer id="Footer1" runat="server"></qsf:footer>
        </form>
    </body>
    </html>

Get more than expected!

 
 

Take your time to truly experience the power of RadControls for ASP.NET AJAX with a free 60-day trial backed up by Telerik’s unlimited dedicated support.

Download your RadControls for ASP.NET AJAX trial and jumpstart your development with the available Getting Started resources.

If you have any questions, do not hesitate to contact us at sales@telerik.com.

Copyright 2002-2024 © Telerik. All right reserved
Telerik Inc, 201 Jones Rd, Waltham, MA 02451