I have a Value List in a grid that is bound to a database table column defined as VarChar(4). The datavalue members of the list are all less than or equal to 4 chracters. The Display Text values are all longer than 4 characters.
If the user is keyboard centric they will start typing until the list item of interest is either the current auto complete item or is visible in the filtered set and then use the down arrow to select the item of interest.
The problem that we have run into is that the number of characters that the user can type for auto complete is limited to the database column width (in this case only 4 characters).
How can I get around this limitation for the auto complete functionality? The problem does not occur for the ComboEditor placed on a WIndows Form
Hello ,
What you could do in your scenario is to add unbound column to UltraGrid, which you will populate based on your column which is limited to 4 charts. Assign your value list to this unbound column, handled AfterCellUpdated event of UltraGrid, and if the value of the unbound column current edit cell is valid for your column which is limited to 4 charts, then update the corresponding cell. Also you should hide your column which is limited to 4 charts.
Please let me know if you have any further questions.
Hello Hristo,
Thanks for the quick reply. I am sure that will work, I was hoping there was a more straight forward approach.
You can close this ticket.
NormD
If the grid column has a ValueList which is using DisplayText and DataValue, then the grid should not be limiting the user to entering a fixed number of characters. That sounds like a bug to me.
You may be able to work around it by setting the MaxLength property of the column.
If that doesn't work, then try this:
private void ultraGrid1_ControlAdded(object sender, ControlEventArgs e) { UltraGrid grid = (UltraGrid)sender; if (grid.ActiveCell.Column.Key == "My ValueList Column") { TextBox textBox = e.Control as TextBox; if (textBox != null) { textBox.MaxLength = 0; } } }
Hello Mike,
The ValueList does have a value list that has both the DataValue adn Display Text properties assigned.
I also found this to be true when using a DropDown editor control that has a dataset as its source. It appears to only occur if the bound value is a string (for the DataValue). When the list is based on having the DataValue as a GUID or Int, the problem does not appear to exist.
Thanks,
Hello,
I have create a support ticket for you with id CAS-95365-X61B0S, in order to investigate this further for you. I will update you through support ticket about the progress of this issue as soon as I have information for you.
Thank you for using Infragistics Components.
Thanks Hristo - lloking forward to your findings.
Hello Norman,
There is an explanation regarding this issue from our Developer, so in sort you should set MaxLengh of the column which should display your ValueList to int.MaxValue (and its corresponding data column is limited to 4 symbols ):
ultraGrid1.DisplayLayout.Bands[0].Columns[0].MaxLength = int.MaxValue;