It what order does the grid process the various KeyActionMappings collections owned by its child objects?
I have overriden the EditorWithMask class and am attempting to add a new NextSection mapping, but it never seems to get processed. I believe some other child element of the grid has a conflicting mapping, but I can't figure out what it is.
If you can't supply the order, do you have any hints as to the best way to troubleshoot the issue?
Thanks!
Hello Mathdx,
Maybe one possible approach to achieve the desired behavior could be if you set property UseEditorMaskSettings and also using EditorComponent. For example:
ultraGrid1.DisplayLayout.Bands[0].Columns["B"].EditorComponent = ultraMaskedEdit1; ultraGrid1.DisplayLayout.Bands[0].Columns["B"].UseEditorMaskSettings = true;
ultraGrid1.DisplayLayout.Bands[0].Columns["B"].EditorComponent = ultraMaskedEdit1;
ultraGrid1.DisplayLayout.Bands[0].Columns["B"].UseEditorMaskSettings = true;
Please let me know if you have any questions.
Regards
I tried that first, with the same result. I want to use my own editor so I can encapsleate all the functionality we need within the control for ease of use by out team of developers. I have everything working except for the key mapping piece...and that seems to behave the same with my control or with the Infragistics supplied editor.
What I really need is some help determining the order that the control processes the KeyActionMappings collection or else some insight into debugging the process.
Thanks,
Hi again,
Maybe other possible approach could be if you are using UltraControlContainerEditor. Please take a look at the attached sample for more details. Please let me know if you have any questions.
public Form1() { InitializeComponent(); UltraMaskedEdit me1 = new UltraMaskedEdit(); UltraMaskedEdit me2 = new UltraMaskedEdit(); ultraControlContainerEditor1.EditingControl = me1; me1.EditAs = EditAsType.Date; ultraControlContainerEditor1.EditingControlPropertyName = "Value"; ultraControlContainerEditor1.RenderingControl = me2; me2.EditAs = EditAsType.Date; ultraControlContainerEditor1.RenderingControlPropertyName = "Value"; ultraGrid1.DisplayLayout.Bands[0].Columns["B"].EditorComponent = ultraControlContainerEditor1; }
public Form1()
{
InitializeComponent();
UltraMaskedEdit me1 = new UltraMaskedEdit();
UltraMaskedEdit me2 = new UltraMaskedEdit();
ultraControlContainerEditor1.EditingControl = me1;
me1.EditAs = EditAsType.Date;
ultraControlContainerEditor1.EditingControlPropertyName = "Value";
ultraControlContainerEditor1.RenderingControl = me2;
me2.EditAs = EditAsType.Date;
ultraControlContainerEditor1.RenderingControlPropertyName = "Value";
ultraGrid1.DisplayLayout.Bands[0].Columns["B"].EditorComponent = ultraControlContainerEditor1;
}
I am not looking to implement a different control. What I am using is working fine. What I need is some insight into how the grid and the controls it contain process key strokes and specifically the various KeyActionMappings collections.
Thanks
Maybe I didn`t understood your scenario, but your original question is
mathdx said:I have overriden the EditorWithMask class and am attempting to add a new NextSection mapping, but it never seems to get processed. I believe some other child element of the grid has a conflicting mapping, but I can't figure out what it is.
So maybe you have a UltraGrid and one of the UltraGrid`s column contains your EditorWithMask (nervertheless if you are using standard UltraMaskEdit or your overriden control). When the cell ( that contain the editor ) is in edit mode, you could use the Tab key through different section in the Editor. Also you could using the functionality of UltraGrid`s Tab key after exit edit mode from the Editor.
When you are talking about KeyActionMapping collection, do you mean the collection of your UltraGrid, or the collection of your Editor ?
Could you please upload a sample with your issue and I`ll be glad to research it.
Thanks and Regards