Desenvolvimento - ASP. NET

Criando editor de texto personalizado em Asp.Net

Nesse artigo pretendo ensinar como registrar um webusercontrol na webconfig e personalizar o uso do editor fckeditor na qual fica mais simples a maneira de se usar ele no decorrer do desenvolvimento de uma aplicação asp.net.

por Emerson Jose



Nesse artigo pretendo mostra como é possível criar webcontrols customizadas aonde vamos usar o componente fckEditor para criar nosso editor, vamos criar um novo projeto do tipo web

E criar uma pasta control e adicionar um webusercontrol.ascx com nome ucEditor e registrar ele na web config como mostra abaixo dentro da tag control.

<add tagPrefix="asp" tagName="TextEditor" src="~/Control/ucEditor.ascx" />

Após fazer isso nos conseguimos chamar nosso editor em qualquer lugar da nossa aplicação inicializando com a tag asp: .

Após fazer isso vamos no webcontrol ucEditor aonde vamos importa a namespace do fckEditor no abaixo da tag control que aparece por Default quando criamos o webcontrol.

<%@ Register assembly="FredCK.FCKeditorV2" namespace="FredCK.FCKeditorV2" tagprefix="FCKeditorV2" %>

Depois vamos chamar nosso editor para página.

<FCKeditorV2:FCKeditor ID="fckEditor" runat="server" BasePath="~/FCKeditor/" />

Abra o cs do nosso webcontrol e vamos criar algumas propriedades e setar no nosso fckeditor.

protected override void OnPreRender(EventArgs e)

{

if (!IsPostBack)

{

LoadEditor();

}

base.OnPreRender(e);

}

public Unit Width

{

get { return fckEditor.Width; }

set { fckEditor.Width = value; }

}

public string Text

{

get { return fckEditor.Value; }

set { fckEditor.Value = value; }

}

public Unit Height

{

get { return fckEditor.Height; }

set { fckEditor.Height = value; }

}

public enum LayoutTemplate

{

basic = 1,

MyToolbar = 2,

}

public LayoutTemplate DesignerToolBox

{

get {return (LayoutTemplate)(ViewState["DesignerToolBox"] ?? LayoutTemplate.basic); }

set{(ViewState["DesignerToolBox"]) = value;}

}

public void LoadEditor()

{

 

if (LayoutTemplate.MyToolbar == DesignerToolBox)

{

fckEditor.ToolbarSet = "MyToolbar";

}

else

{

fckEditor.ToolbarSet = "Basic";

}

}

Essa propriedades vai ser responsável por passar os valores para o fckeditor e também criei um método para setar o designer que vamos querer utilizar no nosso editor Basic ou MyToolbar, após isso é só abrir a página Default.aspx e chamar nosso editor como mostra o exemplo abaixo

<body>

<form id="form1" runat="server">

<div>

<asp:TextEditor DesignerToolBox="MyToolbar" ID="txtEditor" runat="server" Height="300" Width="400" />

</div>

</form>

</body>

Espero que goste dessa maneira acabamos tento um editor de texto que pode ser chamado em qualquer lugar da nossa aplicação de uma maneira simples e fácil e personalizada quando executar o projeto resultado final vai ser esse.

Obs: não esqueça de abaixar o fckEditor e colocar a DLL e pasta do editor no projeto.

Baixe o código fonte.

Emerson Jose

Emerson Jose - Analista Programador Jr. em ASP.NET na linguagem c#, trabalha na linguagem a um ano e meio desenvolvendo artigos para seu blog http://programmingcsharp.wordpress.com e trabalha em uma consultoria na região de São Paulo.