Salut,
ce que tu cherches à faire est peu ou prou un "éditeur WYSIWYG". Il existe beaucoup de solutions existantes, tu peux donc commencer par regarder ce que font les autres, et comment il le font (exemple).
Petite remarque concernant .NET : depuis je-sais-plus-quelle-version une erreur est générée lorsque le client poste une requête contenant des balises/scripts. Pense bien à encoder avant l'envoie vers le serveur.
Tu peux éviter ce comportement en ajoutant dans le system.web de ton Web.Config :
<httpRuntime requestValidationMode="2.0" />
et en mettant dans ton @Page de tes aspx l'attribut :
ValidateRequest="false"