Your Privacy Matters: We use our own and third-party cookies to improve your experience on our website. By continuing to use the website we understand that you accept their use. Cookie Policy
60
v11.2 XamComboEditor and long entries crash
posted

Hi,

We've located a problem that happens in XamComboEditor v11.2 (11.2.20112.1010) when a line exceeds width of XCE, but drop-down is already rendered. Below is a minimal setup for reproduction.

IE. click drop-down to make list stay open. When one _drags slowly_ the "car" down until "mmmmm" entries appear, application crashes in MeasureOverride. When one directly clicks on non-car area of scrollbar and list jumps directly to a place, no crash happens.

If one relocates the Id=20 entry to the top, so that it's immediately rendered into dropdown, it'll not crash here, but will when one scrolls to bottom (horizontal scrollbar disappears while scrolling).

Xaml:

<ig:XamComboEditor Name="XamCE" AutoComplete="True" CustomValueEnteredAction="Ignore" 
                           DisplayMemberPath="Code" Width="245" Height="22" />

Data:
public class A { public int Id { getset; } public string Code { getset; } }
XamCE.ItemsSource =
                new A[] {
                    new A { Id = 1, Code="aaaaaaaaaa aaaaaa aaaa"},
                    new A { Id = 2, Code="bbb bbb bbbbbbbbb"},
                    new A { Id = 3, Code="ccccc ccccc"},
                    new A { Id = 4, Code="dddddd ddd dddddd ddddddd dd"},
                    new A { Id = 5, Code="eee eeeeeeeee"},
                    new A { Id = 6, Code="f ffffffffff ff ff"},
                    new A { Id = 7, Code="gg gggggggggg ggg"},
                    new A { Id = 9, Code="h hhhh hhhhh"},
                    new A { Id = 11, Code="iiiiii iiiiiiiiii iiiiiiii"},
                    new A { Id = 12, Code="jjjjjj jjjjjj jjjjjjjjjjjjjjj jj"},
                    new A { Id = 16, Code="kkkkkkkkk kkkkkkkkkk"},
                    new A { Id = 17, Code="lllllllll llllllllllll"},
                    new A { Id = 20, Code="mmmmmmmmm mmmmmmmmmmmmm mmmmmmmmmm mmmm mm mm"},
                    new A { Id = 31, Code="nnnnnnnnn nnnn nnnn "},
                    new A { Id = 32, Code="ooooooooo oo oooo"},
                    new A { Id = 33, Code="pp pppp pp pppp"},
                    new A { Id = 35, Code="qqqqqqqqq qq qqqq"},
                    new A { Id = 38, Code="rrrrrrrrr rrrr "},
                    new A { Id = 40, Code="sssssssss ssssss"},
                    new A { Id = 50, Code="ttttttttt tttttttttttt tttt"},
                    new A { Id = 52, Code="uuuuuuuuu uuuu"},
                    new A { Id = 76, Code="xxxxxxxxx xxxxxxxxxx xxxx"},
                    new A { Id = 91, Code="yyyyyyyyy yyyyy"},
                    new A { Id = 98, Code="zzzzzzzzz zzzzzzzzzz"},
                    new A { Id = 101, Code="11111111 1111111111 1111111111111 1111111"},                
                };