How can I Show MunericUpDown control as one of the editable columns in UltraGrid?
Please help on this.
Thanks,
Strictly speaking the answer to your question is to use the UltraControlContainerEditor to host a NumericUpDown control, and assign the UltraControlContainerEditor to the column's EditorComponent property.
Another approach is to use the column's masking and spin button capabilities to do it, like so:
UltraGridColumn column = e.Layout.Bands[x].Columns[y];column.MaskInput = "nnn";column.MinValue = 0;column.MaxValue = 999;column.Style = Infragistics.Win.UltraWinGrid.ColumnStyle.IntegerWithSpin;column.ButtonDisplayStyle = Infragistics.Win.UltraWinGrid.ButtonDisplayStyle.Always;
It works. Thanks your great support.
Yes, you are correct. It works after I change the type to float. Is there a property to hide the underline in the editor?
johnny_lan said:Is there a property to hide the underline in the editor?
You can set the PromptChar property on the column to some other character, like a space. You could try an empty string, but I'm not sure if that will work.
column.PromptChar = " ";
It works for me. Thank you so much.
Could someone tell me how to change the style of the active column header as the attached? I don't want the orange border showing out when I focus on the header or buttons.
Hi,
It depends on where that style is coming from. Judging by the sheer amount of styling going on in this screen shot, my guess is that you are probably use AppStylist. In which case this style will have to be changed in the isl file.
If you are not using AppStylist, then the header style is controlled by the HeaderStyle property on the Override object.
Thank you very match.
I don't even have v6.2 any more, so I'm not absolutely sure. But I think you cannot use an editor in that case, you will need an Editor Control.
So what you would do is put an UltraMaskedEdit control on the form and set the EditorControl property of the column to that UltraMaskedEditor control.
Then you handle the EditorSpinButtonClick event of the UltraMaskedEdit control.
Here's some sample code. But frankly, this code isn't really that great. I would put the UltraMaskedEdit control on the form and set it's properties in the designer instead of using the InitializeLayout event. It's just cleaner.
private void ultraGrid1_InitializeLayout(object sender, Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs e) { UltraGridLayout layout = e.Layout; UltraGridBand band = layout.Bands[0]; UltraGridOverride ov = layout.Override; UltraGridColumn column = band.Columns["Double 1"]; column.Header.VisiblePosition = 1; column.MaskInput = "nnn.n"; column.MinValue = 0.0; column.MaxValue = 999.9; UltraMaskedEdit ultraMaskedEdit = new UltraMaskedEdit(); this.Controls.Add(ultraMaskedEdit); ultraMaskedEdit.EditorSpinButtonClick += new Infragistics.Win.UltraWinEditors.SpinButtonClickEventHandler(ultraMaskedEdit_EditorSpinButtonClick); ultraMaskedEdit.ButtonsRight.Add(new SpinEditorButton()); column.EditorControl = ultraMaskedEdit; column.ButtonDisplayStyle = Infragistics.Win.UltraWinGrid.ButtonDisplayStyle.Always; } void ultraMaskedEdit_EditorSpinButtonClick(object sender, Infragistics.Win.UltraWinEditors.SpinButtonClickEventArgs e) { UltraGridCell cell = e.Context as UltraGridCell; switch (e.ButtonType) { case Infragistics.Win.UltraWinEditors.SpinButtonItem.NextItem: cell.Value = (double)cell.Value + 0.1; break; case Infragistics.Win.UltraWinEditors.SpinButtonItem.PreviousItem: cell.Value = (double)cell.Value - 0.1; break; } }
Thank you Mike for your response.
I use Infragistics v6.2, but i not able to upgrade controls. Who is the spin event when i can increment value on 1.0
Please help me.
If the SpinIncrement property does not exist, then you are probably using a very old version of the controls from before that feature was added. The solution would be to update to a new version or handled the spin button events and increment the value yourself.
I try your code but
editorWithMask.SpinIncrement not exist
Pleas help me.