I'm using RowEditTemplate and having trouble with a datetime field.
One of the cells is bound to a system.nullable (of datetime) property of a business object. I think that's why the WinGridCellProxy does not show this field as a datetimepicker control. Is there any way to force the proxy to use a datetimepicker control?
If not, I can set the MaskInput property to something like "## / ## / ####" to at least force the user to enter the value in a valid date format. However, even when I enter a valid date value (e.g. 09/07/2008), I get "Unable to update the data value: Value in the editor is not valid". I thought perhaps it's because the value gets updated as "09072008" without the slashes so I tried setting the MaskDataMode/MaskClipMode/MaskDisplayMode properties to include both literals and prompt characters but it didn't help.
First of all, is there a way to force the proxy to use a specific control?
If not, how do I use the MaskInput property to validate user input?
Thanks.
The UltraGridCellProxy should be using the EditorResolved of the cell that it's associated with; do you get the same behavior when the template isn't used and you edit the grid directly? I don't think that you can force the proxy to use a specific editor, but there really isn't any reason to. What you can do is use whatever editor you want (i.e. UltraDateTimeEditor) and set it up via DataBindings, such as:
this.ultraDateTimeEditor.DataBindings.Add("Value", this.ultraGridRowEditTemplate1, "Some Column Key");
I can't really say why you're getting that error when trying to update the cell. It looks like your data fits the mask, so there must be something else going on behind the scenes. It may be worth submitting a small sample to Developer Support so that they can look into it.
-Matt