Hi, I have the following WebDropDown on my page:
<ig:WebDropDown ID="ddlParticipant" runat="server" Width="125px" EnablePaging="True" EnableMultipleSelection="True" PageSize="20" DropDownContainerWidth="300px" DropDownContainerHeight="550px" EnableClosingDropDownOnSelect="False" onselectionchanged="ddlParticipant_SelectionChanged " onprerender="ddlParticipant_PreRender"> <DropDownItemBinding TextField="ParticipantID" ValueField="ParticipantID"></DropDownItemBinding> <ClientEvents /> <ItemTemplate> <%#DataBinder.Eval(Container.DataItem, "ParticipantID").ToString() + " - " + DataBinder.Eval(Container.DataItem, "Name").ToString() %> </ItemTemplate > <AjaxIndicator AltText="Async post" ImageUrl="~/images/ajax-loader.gif" /> <Button ImageUrl="/ig_res/Default/images/igsch_xpblueup.gif" /> <AutoPostBackFlags SelectionChanged="Async" /> </ig:WebDropDown>
The problem I am having is that sometimes (randomly) the drop down will not drop down. I click on the drop down button and nothing happens. How do I fix this? Any help would be appreciated. I'm using Infragistics 9.2 Version 2014 and IE 7.
Thanks,
Jeff
Hi,
What code do you have in the PrePrender event handler? Also is your control in some kind of container ?
I would suggest a couple of things:
1) you may try changing AutoPostBackFlags to "On" for SelectionChanged, and try placing the control in an updatePanel, to avoid the full postback, this could help.
2) you may try playing with the EnableDropDownAsChild property setting it to either true or false - it plays a role depending on what kind of container you have placed the control.
Hope it helps. Please let me know if it works. I would also suggest to have the latest service release installed if the above doesn't help, just in case.
Thank you,
Angel
Hi Angel,
Thanks for the tips. The control already is in an update panel, and the autopostbackflags is already set for Selection Changes. I changed EnableDropDownAsChild from true to false. I also did have some code in the control's prerender event handler (I had code to check selections that were already checked on another page of the drop down). I moved that to the page's prerender event handler. None of this worked. I still get the random problem where the control doesn't drop down.
also, if it helps, I have the control inside a web UserControl.
is there anythign else I can try?
Do you have any other ideas that I can try? I tried everything you said, and I upgraded to the latest service release for version 9.2, which is version 2056 I believe. I still have the problem.
I see what's going on when the problem is occurring, but I don't understand why. The problem is that when I click the drop down button, the drop down container doesn't appear. This problem is random. It will happen on one control, and then I'll come back to that control again and it's fine. Also, the problem seems to be only in IE. I'm not noticing it with firefox. Here is what I'm seeing:
In the HTML, there is a div defined like:
Hey Jeff,
Maybe it is related to some other elements you have on the form (that act as containers for the dropdown). What's the whole HTML structure in your markup ? If you can send me some sample code i will try to reproduce it and find a solution for you.
I found a work around. The problem was actually the Width of the drop down div was set to 0 sometimes, even though I set the DropDownContainerWidth property to 300 in the control's markup. So as a "fix", I just put some javascript on my page to set the width of that div to 300. I would like a better fix though, since that is sort of a hack. So to answer your question, here is how I have my page setup.
My drop down is actually defined in an ASP.NET user control. I have a master page, which defines my script manager, and then I have a content page. The content page defines my updatepanel. Inside the update panel, I have an ASP.NET place holder control. In the codebehind for my content page, I create an Infragicsits web panel, add an instance of my ASP.NET user control (where the drop down is defined) to the controls collection of the update panel, and then add the update panel to the controls collection of the placeholder control. I also define a scriptmanagerproxy control on the content page.
I tried creating some sample code, but even with the same structure the problem doesn't happen.