I have a dialogwindow put on a content page. Everything works fine except when the window is in normal state, the scrollbar acts very strangely. It is frustrating for the user because it won't scroll properly. You can grab the vertical scrollbar and it will only go so far down, probably because the height on the content placeholder is set, and it will pause for a long time before it gets updated to render the bottom of the dialog window.
How can I get the scrollbar to function properly? I tried removing the window element like in another post and readding it to the form, but I get an error saying that it is already added and I can't have a duplicate. I have tried using an extra div statment to set the height of the div and then set the window at 100%, but the window overflows at that point.
Hi nbizub,
Thank you for posting in the community.
I have investigated your sample, however so far am unable to find any issues with the dialog window's scrollbar (using your setup directly in a website). However, the pages scrollbar itself behaves a bit oddly while the MaintainLocationOnScroll property is set to true. Setting that property to false seems to resolve that matter.
Please let me know if I am misunderstanding your issue in any way.
Hello nbizub,
Please feel free to contact me if you are still experiencing any issues with this scenario.
Hi Petar. I have set the MaintainLocationOnScroll and the issue still exists. I get a better interaction when I put just a plain textbox under the webhtmleditor and set it to display:none. It is like the WDW doesn't see the WHtmlEditor properly. Also, I have a thread I created to address the webhtmleditor problem but you may have seen this before. The content or text window of the webhtmleditor actually scrolls out of the editor along with the scrolling of the dialog window. So I end up with a very strange behavior. Is there some sort of issue with the editor being put on the webdialogwindow? Also, the dialor window loses its styles when I access the site on the server. When using Visual Studio, everything looks great. What is Visual Studio doing that IIS is not doing? Or is the issue something else on the server? Every machine I access the site with has the same problem.
I experimented with first version of your application and found that scrolling problems happens because of 2 reasons.
1. MaintainLocationOnScroll mentioned by Petar: dialog is too large and change content of dialog by WebHtmlEditor may trigger resize event of browser and dialog rebuilds its layout.2. Timer events refresh content and user entry can be lost (that does not happen in your second sample).
Note: change of parent-element of dialog is possible only when only full postback is used. Actually there is not need in custom javascript codes, because there is property UseBodyAsParent and it has description about limiatations.
I did not find any problems with your second sample. Scrolling, editing, etc. seemed to work.
The isuue with lost styles when IIS is used, is probably related to failure to get css resources used by dialog. I suggest you to check generated html and analyze attributes of dialog elements in developer tool or similar. You may select any html element used by dialog, look at its styles, classes and other attribute, check which actual css files provide those classes and try to figure out which files are not loaded, which attributes do not have effect, etc.
Hello. Could you please expand on the dialog window being "too large." Also, when you say that you had no problems with the 2nd set of sample files, I have to ask you if you followed the steps completely. Because the editor does not appear to have an issue unless after to press a toolbar button, I use the indent right toolbar button and then click back to the editor window to type in more text. That is when the strange sizers box apprears and takes over the editor window. You say that this doesn't happen to you? I have tested this on several clients and the problem remains. I will check on the files, however, when I first created the pages, they worked fine on my system and in IE from the server. I didn't even know there where style issues for other users. I then had a co-worker test on his client opening the application in IE from the server. He immediately got the style problem. I worked on the pages adding more functionality and then all of a sudden I got the style issues in IE from the server as well, just not when running in Visual Studio. Unfortunately, no matter what I remove from the pages, the style issue maintains when I access the website with IE from the server, yet it looks fine in Visual Studio. I can't see how missing files can be a problem when Visual Studio local host will display the pages correctly. How can that be? And how can it be that is worked fine accessing the site for quite a while into development and then it decided to have a style issue in IE outside of Visual Studio? These are the same files and resource files I have used on all my applications. In the second project that I attached, I completely created the sample in a new website. The editor has the issue and the styles are still not reflecting correctly.
I am not sure how your attachment can be run as it is and produce pictures which you refer to. Attached image shows content of fields, large content of upper html editor, etc. Sure a sample on my machine has ig_res with expected resource files and dlls located in GAC. Though, my sample also has another local difrectory "./images/htmleditor" filled by images for WebHtmlEditor. The WebHtmlEditor ImageDirectory is set to that location:<ighedit:WebHtmlEditor ID="tbQuestion" ImageDirectory="Images/htmleditor" ...
Otherwise, editor would not be able to get its images. Since in your sceenshots editor-images were ok, I assumed that your application handled editor-images by different way and there is no problems.
Note: For default configuration, the resources of WebHtmlEditor may come from different places. That can be default installation of NetAdvantage, IIS, or something like C:\Windows\Microsoft.NET\Framework\v2.0.50727\ig_common\images\htmleditor\*.*.Any of those "start-up" locations can be invalid for a real application. A real application should ensure that images will be loaded reliably: the best is explicit local-to-project directory, similar to which I mentioned before.
Attachment had some other issues too, which I fixed and did not pay attention to them. For example, there was no space between ForeColor and CssClass in Panel1 of master, so, that file was rejected by VisualStudio.Your previous steps did not mention that problem starts after a partial postback. If that postback is triggered by Update button, then actually I tested that before as well as all other possible active elements in sample. All possible actions worked ok for me and did not trigger any side effects.
I run sample from within VisualStudio and without by pointing a browser to the sample.aspx.
If you run sample locally from VisualStudio and it works ok, but remote connection triggers appearance problems, then I can repeat again that problem with your application is probably related to failure to load resources and that can be solved by analyzing html within browser on client.
If original appliction is too complex to handle, then I suggest you to create a temporary aspx, which content you may gradually increase from simplest (only WebHtmlEditor) up to your original application where editor is wrapped into dialog, update panel, etc. Eventually will probably catch a problem and figure out the reason.
Here is another screen shot of the webhtmleditor messing up in the webdialogwindow. I have two editors in the webdialogwindow. The dialog window is in an update panel it has a gridview, which retains its styles, and two editors that get messed up on a partial postback. I do have an update panel inside the dialog window that does the partial postback. When it runs the editors mess up as shown in the screen shot. Its like the editors text window is mis-aligned.
Maybe the editors are not refreshing and don't really know where the dialog window is.
Hello. There are two issues that I can easily reproduce with the sample project I previously attached. To reproduce the style issue, do not run the sample project in Visual Studio at all. As you can see by the files in the sample, there are no other css classes for the editors than ig_res. If I have no other classes involved, how can the resource classes be overridden?
As for the image bars, there are no images being loaded at all. The editor is doing that by itself. That is the second issue. If you load the project on an iis server, click the button to open the web dialog, click into the editor window, type some text, click on the indent button, or any other button but the first three, the text will be indented, then click on the editor window again to type in more text...The image bars, sizer bars, whatever you want to call them appear and take over the editor.
I have attached the files again. You will have to copy your dlls into the bin and copy ig_res into the project because that is too much to upload. Again, for the style issue you have to run the project OUTSIDE of Visual Studio.
Under large, I meant that size of dialog hardly fits in browser window and size of dialog does not fit in its size. That is related only when only situation MaintainLocationOnScroll is enabled. All that is ok, but when content of dialog is modified, then browser may potentially raise its resize event. Dialog may listen to that event and refresh/restructure its bounds which may affect overall layout of page.
I did not know about specific steps like pressing indent right and other buttons. I tested that and it worked ok.
I tested both File System and Local IIS websites in both VisualStudio2008 and VisualStudio2010. All cases worked the same way.
I noticed that your screenshot for IIS shows large content in upper editor, which is read only. I added codes to load large text on Page.Load and it worked ok. That screen shot also shows 8 small rectangles which resemble IE-designer for IMG object, though InsertImage option of WebHtmlEditor is disabled. I guess, your application inserts it on server. That is ok too.
The screenshot with server shows rather strange image: centered buttons in editor, wrong dialog header, etc. It looks like global css overrides are applied, which take over attributes provided by styles of controls.
That is probably issue with resouces provided by server to client.
As I mentioned, one of the options to figure out why it happens, is to analyze content of page on client using debugger/developer tools. Check if css classes are loaded, have effect, not overriden by unexpected external classes, have correct priority, etc.