http://demos.telerik.com/aspnet-ajax/input/examples/common/orderform/defaultcs.aspx
On that page try paste some text into any textbox and then lose focus (click somewhere) and then again set focus on textbox. The text disappear! Why is that happening and how to avoid that?
It happens in FF and Opera. In IE 8 not.

| protected void RadGridSubjectArea_PreRender(object sender, EventArgs e) |
| { |
| Trace.Write("Event", this.ToString() + ": " + "RadGridSubjectArea_PreRender"); |
| RadGrid grid = (RadGrid)sender; |
| bool editAllowed = this.isEditAllowed; |
| grid.AllowAutomaticInserts = editAllowed; //Added safety since controls should be hidden |
| grid.AllowAutomaticDeletes = editAllowed; |
| grid.AllowAutomaticUpdates = editAllowed; |
| GridTableView view = grid.MasterTableView; //Top-level view |
| //Set editability of this view and child views at any level |
| this.GridTableHierarchySetEditability(view, editAllowed); |
| //Try to force the display to refresh? //Clicking master grid's Refresh Data hides the columns even if this code is NOT re-run, // so it seems the setting has been made, but not used during the first render? |
| //grid.Rebind(); //This prevents clicking Refresh Data from working. |
| } |
| protected void GridTableHierarchySetEditability(GridTableView view, bool editAllowed) |
| { |
| Trace.Write("Event", this.ToString() + ": " + "GridTableHierarchySetEditability"); |
| //Recursively set editability for this table view and all its children. |
| //Unnecessary since we hide command buttons, but this is further protection. |
| view.AllowAutomaticInserts = editAllowed; |
| view.AllowAutomaticDeletes = editAllowed; |
| view.AllowAutomaticUpdates = editAllowed; |
| //Show or hide command columns (generally edit or delete) |
| foreach (GridColumn col in view.Columns) |
| { |
| if (col.ColumnType == "GridEditCommandColumn" || col.ColumnType == "GridButtonColumn") |
| { |
| col.Visible = editAllowed; |
| } |
| } |
| //Process any child tables |
| foreach (GridTableView child in view.DetailTables) |
| { |
| this.GridTableHierarchySetEditability(child, editAllowed); |
| } |
| } |
| <BR> |

| if (HasBackgroundImage) |
| { |
| string script = @" |
| <script language ='javascript'> |
| function OnClientLoad(editor) |
| { |
| var style = editor.get_contentArea().style; |
| style.backgroundImage = 'url(/UserImages/backgrounds/" + strBgImg + @")'; |
| style.backgroundRepeat = 'no-repeat'; |
| style.backgroundPosition = 'top right'; |
| } |
| function BackgroundManagerFunction(sender, args) |
| { |
| alert('OK'); |
| } |
| </script>"; |
| Page.ClientScript.RegisterClientScriptBlock(GetType(), "CommentScript", script, false); |
| RadEditor1.OnClientLoad = "OnClientLoad"; |
| } |
| if (HasBackgroundImage) |
| { |
| // Custom image manager |
| Telerik.Web.UI.Editor.DialogControls.FileManagerDialogParameters backgroundFileManagerParameters = new Telerik.Web.UI.Editor.DialogControls.FileManagerDialogParameters(); |
| backgroundFileManagerParameters.ViewPaths = new string[] { "~/UserImages/Backgrounds/" }; |
| backgroundFileManagerParameters.UploadPaths = new string[] { "" }; |
| backgroundFileManagerParameters.DeletePaths = new string[] { "" }; |
| backgroundFileManagerParameters.MaxUploadFileSize = 5000000; |
| // If you don't set the following property, the default value will be used |
| //backgroundFileManagerParameters.SearchPatterns = new string[] { "*.jpg,*.gif,*.png" }; |
| DialogDefinition backgroundImageManagerDialog = new DialogDefinition(typeof(Telerik.Web.UI.Editor.DialogControls.ImageManagerDialog), backgroundFileManagerParameters); |
| backgroundImageManagerDialog.ClientCallbackFunction = "BackgroundManagerFunction"; |
| backgroundImageManagerDialog.Width = Unit.Pixel(680); |
| backgroundImageManagerDialog.Height = Unit.Pixel(420); |
| //If you need to customize the dialog then register the external dialog files |
| //backgroundImageManagerDialog.Parameters["ExternalDialogsPath"] = "~/AdminEditorDialogs/"; |
| RadEditor1.DialogOpener.DialogDefinitions.Add("backgroundImageManager", backgroundImageManagerDialog); |
| } |
| <asp:Panel ID="pnlTitle" runat="server" DefaultButton="btnUpdateTitle" > |
| <b>Title:</b> |
| <asp:TextBox ID="txtTitle" runat="server" CssClass="textBox" Width="560px"></asp:TextBox> |
| <asp:Button id="btnUpdateTitle" runat="server" CssClass="button" Text="Update Title" CausesValidation="false" OnClientClick="UpdateTitle(); return false;" /> |
| <br /> |
| </asp:Panel> |
| <asp:Panel ID="pnlSubTitle" runat="server" DefaultButton="btnUpdateSubTitle"> |
| <b>Sub-Title:</b> |
| <asp:TextBox ID="txtSubTitle" runat="server" CssClass="textBox" Width="560px"></asp:TextBox> |
| <asp:Button id="btnUpdateSubTitle" runat="server" CssClass="button" Text="Update Sub-Title" CausesValidation="false" OnClientClick="UpdateSubTitle(); return false;" /> |
| </asp:Panel> |
| <telerik:RadEditor runat="server" ID="RadEditor1" ExternalDialogsPath="~/AdminEditorDialogs" |
| AutoResizeHeight="false" EnableResize="false"> |
| <ImageManager ViewPaths="~/UserImages" UploadPaths="~/UserImages" /> |
| <Content> |
| </Content> |
| </telerik:RadEditor> |
| <script type="text/javascript"> |
| Telerik.Web.UI.Editor.CommandList["BackgroundImage"] = function(commandName, editor, args) |
| { |
| editor.showDialog("backgroundImageManager"); |
| }; |
| </script> |
I am experiencing some inconsistent behavior with the New Paragraph feature on the Editor.
I did all my tests on your example at: http://www.telerik.com/DEMOS/ASPNET/Prometheus/Editor/Examples/Default/DefaultCS.aspx
On IE:
The ENTER key actually generates a br tag.
The button labeled New Paragraph creates a new p tag and places a space in it but places the cursor after the paragraph so if you start typing straight away the words you type are placed outside it and after it, as such:
| <p>This is a paragraph</p> |
| <p> </p>My new paragraph by clicking on the New Paragraph button |
This happens only if the cursor was placed at the last paragraph in the editor content before the button was clicked.
If another paragraph already exists after the one that the cursor is currently placed and you click on the New Paragraph button a new p tag is correctly added before the next paragraph but the cursor is placed at the beginning of the next one. If you start typing the content is placed on that paragraph leaving the new one in between untouched. There is no way to write in the new one unless you switch to the html view and add some content to the new paragraph in order to make it visible in the edit mode.
On FF:
The ENTER key actually generates a p tag.
The button labeled New Paragraph does absolutely nothing.

| void AddSpellCheckerButton() |
| { |
| Telerik.WebControls.RadEditorUtils.ToolbarButton spellCheckButton = new Telerik.WebControls.RadEditorUtils.ToolbarButton( SpellCheckerCommandName ); |
| spellCheckButton.ShowIcon = true; |
| ValueEditor.Toolbars[ MainToolBarName ].Tools.Add( spellCheckButton ); |
| } |