Click here to Skip to main content
Click here to Skip to main content
Go to top

How to Integrate CKEditor with ASP.NET

, 22 Jan 2013
Rate this:
Please Sign up or sign in to vote.
This is meant for easy integration of CKEditor with ASP.NET

Introduction

CKEditor is one of the most popular web text editors nowadays. Here is the official Site of CKEditor. Usually, we use this tool for easy and friendly back end data entry. This tool is rapidly used for composing email messages. On the other hand, CKEditor is an open source application, which means it can be modified any way we want. So I found it very useful for our day to day practice. Today, I am going to describe an easy way to integrate CKEditor with ASP.NET web projects.

Background

As a web developer, I found that I am using CKEditor on a regular basis. Each time, I was getting into some trouble that took my work hour unnecessarily. That's why I made a decision to find an easy way to integrate this useful tool with my ASP.NET web projects.

Points of Interest

I think this will be interesting and time consuming for CMS type data entry where CKEditor is quite often used. As this process can be used easily and it supports easy integration between different projects, programmers will be helped a lot.

Using the Code

Try the following easy steps to complete the task.

  1. Open New Project [File->New->Project-> ASP.NET Empty Web Application]
  2. Name the Project as you like, I named it "TestCkEditor"
  3. Download the attached Zip file (CKEDditor.zip) and extract.
  4. You will find a bin folder when you extract the CKEditor.zip
  5. Go to the Solution explorer

    [References->Right
    Mouse Click -> Add References->Browse-> Then browse the bin folder of the extracted (CkEditor.zip) -> Select The Two DLLs
    (CKEditor.dll & CKEditor.Net.dll)->OK]

  6. There is a folder called ckeditor in small caps. Find the folder. This folder contains all necessary files (.js , .css, images, themes, etc. that are necessary for successful integration of this tool.
  7. Copy this folder and paste it in your project.
  8. Then add a new aspx page to the project.
  9. Then write this single line of code just before the HTML tag of your .aspx page. This block of line will register the DLL file that you have just added & using the "TagPrefix" will call the CKEditorControl. Here the BasePath is the folder you have just added which contains all necessary files to load the CKEditor.
     <%@ Register Assembly="CKEditor.NET" Namespace="CKEditor.NET" TagPrefix="CKEditor" %> 
  10. Then add this div inside of the form tag of your aspx page and we are done.
    <div>
       <CKEditor:CKEditorControl ID="CKEditor1" BasePath="/ckeditor/" runat="server">
       </CKEditor:CKEditorControl>
    </div>
  11. Build the project and then run. You will find CKEditor with full features at your screen. Then customize as per your requirements.

Here is the back end code under button click.

HtmlEncode and HtmlDecode are useful ways to use in here. HTML encoding makes sure that text is displayed correctly in the browser and not interpreted by the browser as HTML. For example, if there is a string in the CKEditor which contains a less than sign (<) or greater than sign (>), the browser would interpret these characters as the opening or closing bracket of an HTML tag. When the characters are HTML encoded, they are
converted to the strings &lt; and&gt;, which causes the browser to display the less than sign and greater than sign correctly.

protected void Button1_Click(object sender, EventArgs e)
        {
            string str = CKEditor1.Text;
            string str1 = Server.HtmlEncode(str);
            string str2 = Server.HtmlDecode(str);
            lblText.Text = str2;
        }  

On the other hand, Html Decoding does not convert any tag to string. It simply interprets your input into plain HTML.

Here is an example:

There is a paragraph in the CKEditor. So the HtmlDecode converts into a plain HTML. On the other hand, HtmlEncode converts them into string.

So now I think you will find it easier to work with CKEditor.

Happy coding.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

Share

About the Author

dpalash
Software Developer Desme Bangladesh
Bangladesh Bangladesh
I have completed my Undergraduate from Khulna University of Engineering in Computer Science & Engineering. Now i am working as a Software Engineer at desme-Bangladesh on ASP.NET. I really love this technology and like to build my career with this only.
Follow on   Twitter   Google+

Comments and Discussions

 
QuestionAutogrow? Pinmembertodavidhardy1-Jul-14 14:50 
Newshh PinmemberMember 1038689914-Feb-14 4:10 
Questionlicensing PinmemberMember 103320251-Nov-13 8:06 
AnswerRe: licensing Pinprofessionaldpalash2-Nov-13 7:57 
Questionhow to store the dynamic rich text data from CKEditor in ASP.Net PinmemberArsh Pareek2-Oct-13 2:54 
AnswerRe: how to store the dynamic rich text data from CKEditor in ASP.Net Pinprofessionaldpalash2-Oct-13 23:00 
GeneralRe: how to store the dynamic rich text data from CKEditor in ASP.Net PinmemberArsh Pareek3-Oct-13 0:33 
SuggestionBetter way to use CKEditor with ASP.NET PinmemberPeter Huber SG8-Jul-13 16:47 
GeneralRe: Better way to use CKEditor with ASP.NET Pinprofessionaldpalash8-Jul-13 21:53 
GeneralRe: Better way to use CKEditor with ASP.NET PinmemberRahul Dihora RV4-Aug-14 3:09 
Questionhow could i modify it Pinmemberequeramullah bughio11-Apr-13 21:25 
QuestionPublishing Asp .net File which contain CKEditor Pinmemberitsureshuk9-Apr-13 0:34 
QuestionImage Up PinmemberAhmad Abd-Elghany7-Mar-13 17:32 
AnswerRe: Image Up Pinprofessionaldpalash8-Apr-13 4:26 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

| Advertise | Privacy | Mobile
Web03 | 2.8.140916.1 | Last Updated 22 Jan 2013
Article Copyright 2013 by dpalash
Everything else Copyright © CodeProject, 1999-2014
Terms of Service
Layout: fixed | fluid