Hi guys
I have a scenario in a ultrawingrid where in the cell: column A row 1 I want to have an input mask to allow only integers... in cell: column A row 2 I want to have an input mask that will allow for decimals.
basically I want a particular column in a grid to cater for different input masks per cell.
Can someone tell me how to go about doing this?
thanks
Hi,
Thank you for contacting Infragistics Developer Support.
What you could do in order to achieve this is to assign to each cell a different editor. This editor can have its own owner, which in turn can have settings specifying the input mask the editor will use. You can assign this editor in the InitializeRow event.
I have attached a sample that demonstrates this suggestion.
Please let me know if you have any additional questions.
Hi
thanks for this and the sample application... however to implement what you have given me in the language im using would be extremely difficult.... is there no simpler way of doing it without using the EditorCache?
I took some code out of all of this purely for testing. all im doing in the same form is creating this method just to create this editor.
METHOD PRIVATE Infragistics.Win.EmbeddableEditorBase CreateNewEditor(INPUT inputMask AS CHARACTER):
DEFINE VARIABLE mysettings AS Infragistics.Win.UltraWinEditors.DefaultEditorOwnerSettings NO-UNDO.
DEFINE VARIABLE myowner AS Infragistics.Win.UltraWinEditors.DefaultEditorOwner NO-UNDO.
DEFINE VARIABLE qtyeditor AS Infragistics.Win.EditorWithMask NO-UNDO.
mysettings = NEW Infragistics.Win.UltraWinEditors.DefaultEditorOwnerSettings().
mysettings:MaskInput = inputMask.
myowner = NEW Infragistics.Win.UltraWinEditors.DefaultEditorOwner(mysettings).
qtyeditor = NEW Infragistics.Win.EditorWithMask(myowner).
RETURN qtyeditor.
END METHOD.
then in the initializerow of the grid doing this:
DEFINE VARIABLE myeditor AS Infragistics.Win.EmbeddableEditorBase NO-UNDO.
myeditor = CreateNewEditor("nnn.nn").
e:Row:Cells["p-qtyd"]:Editor = myeditor.
this complains though when I update the this field in the gridroweditor... gives me an application error of... "operation can not be performed when not in edit mode"
ive tried perfromaction(entereditmode) but that still doesn't work...
is there any possibility of a simple example without the EditorCache??
I am just checking about the progress of this issue. Let me know if you need my further assistance on this issue.
Thank you for using Infragistics Components.
Thank you for the reply.
You don’t need the EditorCache in order to implement this feature. It is there in order to make sure that you don’t create more editors then you need. If you remove it you will create editors for every row, while with it - for every different input mask. In order to not use the EditorCache, you will need to add the following code in the InitializeRow event (I am not familiar with Progress language, as it is not supported):
string inputMask = (string)e.Row.Cells["Input Mask"].Value;
DefaultEditorOwnerSettings settings = new DefaultEditorOwnerSettings();
settings.MaskInput = inputMask;
DefaultEditorOwner owner = new DefaultEditorOwner(settings);
// Create a new editor component with the appropriate settings.
EditorWithMask editor = new EditorWithMask(owner);
// Assign the editor to the column.
e.Row.Cells["Input Col"].Editor = editor;