Print Page | Close Window

ListConverter Bug

Printed From: IdeaBlade
Category: DevForce
Forum Name: DevForce Classic
Forum Discription: For .NET 2.0
URL: http://www.ideablade.com/forum/forum_posts.asp?TID=952
Printed Date: 10-Jun-2026 at 7:09pm


Topic: ListConverter Bug
Posted By: farooq.karim
Subject: ListConverter Bug
Date Posted: 25-Sep-2008 at 11:26am

ListConverter is creating a bug when used for UltraComboEditor:

I am using
 
IdeaBlade 3.6.2.2
VS 2008
Infragistics NetAdvantage for .net 2008 Vol 1
 
I have done my work, I am 100% sure that its because of IdeaBlade, the application crashes in the Infragistics code but only when the contol is bound through ListConverter, when the control is bound through .net databinding no exception occurs. I found that display of "(none)" for null value is creating the problem.
 
Here I am attaching my sample project which I have created to produce that bug, its a simple project no DB is required.
 
Download here Sample Project ( http://www.ideablade.com/forum/uploads/382/ComboProblem.zip - http://www.ideablade.com/forum/uploads/382/ComboProblem.zip )
 
Steps to produce:
 
Run the application, there are 3 items in the Binding Navigator, navigate to the last one, make sure that the focus is on the ultracomboeditor control(by default if you don't click on the form and navigate to the last one, this control should have the focus).
 
Once you are on the last item, hit the delete button on the binding navigator and you will have the exception:
 
For your help stack trace is attached:
 
   at Infragistics.Win.ValueListItemsCollection.GetItemFromDisplayTextOnly(Int32& lastValueListIndex, String displayText)
   at Infragistics.Win.ValueList.FindByDisplayText(Int32& lastValueListIndex, String displayText)
   at Infragistics.Win.ValueList.Infragistics.Win.IValueList.GetValue(String text, Int32& index)
   at Infragistics.Win.UltraWinEditors.UltraComboEditor.IsItemInList(String displayText)
   at Infragistics.Win.UltraWinEditors.UltraComboEditor.OnValidating(CancelEventArgs e)
   at System.Windows.Forms.Control.NotifyValidating()
   at System.Windows.Forms.Control.PerformControlValidation(Boolean bulkValidation)
   at System.Windows.Forms.ContainerControl.ValidateThroughAncestor(Control ancestorControl, Boolean preventFocusChangeOnError)
   at System.Windows.Forms.ContainerControl.ValidateInternal(Boolean checkAutoValidate, Boolean& validatedControlAllowsFocusChange)
   at System.Windows.Forms.Control.ValidateActiveControl(Boolean& validatedControlAllowsFocusChange)
   at System.Windows.Forms.BindingNavigator.OnDelete(Object sender, EventArgs e)
   at System.EventHandler.Invoke(Object sender, EventArgs e)
   at System.Windows.Forms.ToolStripItem.RaiseEvent(Object key, EventArgs e)
   at System.Windows.Forms.ToolStripButton.OnClick(EventArgs e)
   at System.Windows.Forms.ToolStripItem.HandleClick(EventArgs e)
   at System.Windows.Forms.ToolStripItem.HandleMouseUp(MouseEventArgs e)
   at System.Windows.Forms.ToolStripItem.FireEventInteractive(EventArgs e, ToolStripItemEventType met)
   at System.Windows.Forms.ToolStripItem.FireEvent(EventArgs e, ToolStripItemEventType met)
   at System.Windows.Forms.ToolStrip.OnMouseUp(MouseEventArgs mea)
   at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
   at System.Windows.Forms.ToolStrip.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
   at System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)
   at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(Int32 dwComponentID, Int32 reason, Int32 pvLoopData)
   at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
   at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
   at System.Windows.Forms.Application.Run(Form mainForm)
   at ComboProblem.Program.Main() in C:\Documents and Settings\farooq.karim\Desktop\ComboIssue\ComboProblem\ComboProblem\Program.cs:line 18
   at System.AppDomain._nExecuteAssembly(Assembly assembly, String[] args)
   at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)
   at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
   at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.ThreadHelper.ThreadStart()
 
Please let me know what should be done to get it not to happen. Let me know if you need more information.



Replies:
Posted By: davidklitzke
Date Posted: 18-Oct-2008 at 4:49pm
I tried this on a machine with VS 2008 SP1.  I had Infragistics 8.2 on that machine, not Infragistics 8.1, so I ported the application to use Infragistics 8.2.  I used IdeaBlade 3.6.4 (which will ne released on Monday, October 20).
 
I could not reproduce the problem.



Print Page | Close Window