Can you tell me what I'm doing wrong ?
Why does the cell not enter edit mode with this ... the correct line is selected and everything,but I have to use the mouse to click the cell to enter it's edit mode-> I want the cell in edit-mode right away ...
This is my code:
_ugFinishDateChanges.DataSource = changes;
if (changes.Count > 0){ _ugFinishDateChanges.Selected.Rows.Clear(); _ugFinishDateChanges.Selected.Rows.Add(_ugFinishDateChanges.Rows[0]); _ugFinishDateChanges.Focus(); _ugFinishDateChanges.ActiveRow = _ugFinishDateChanges.Rows[0]; _ugFinishDateChanges.PerformAction(UltraGridAction.EnterEditMode);
_ugFinishDateChanges.ActiveCell = _ugFinishDateChanges.Rows[0].Cells[
"ReasonForChange"];
//why does the actual "ReasonForChange" CELL not get the focus ??
}
The code you have here is setting the ActiveCell, but that doesn't put the cell into edit mode. Active and in edit mode are two totally different things.
What you need to do is, after you set the ActiveCell, call the PerformAction method on the grid and tell it to EnterEditMode.
Hi Mike!
I've already tried that, by switching the lines like this ... but it still won't enter EDIT-MODE( the cell is correcty selected and everything but I have to CLICK IT so I can actually write any text inside the cell )
This is my code - it's NOT working:
if
(changes.Count > 0)
{
_ugFinishDateChanges.Selected.Rows.Clear();
_ugFinishDateChanges.Selected.Rows.Add(_ugFinishDateChanges.Rows[0]);
_ugFinishDateChanges.Focus();
_ugFinishDateChanges.ActiveRow = _ugFinishDateChanges.Rows[0];
];
_ugFinishDateChanges.PerformAction(
.EnterEditMode);
//hvernig set g fkusinn "ReasonForChange" celluna ????
Hi !
It works OK to enter edit mode by CLICKING in the cell ... it has always worked, and that's not the problem
But I want the cell to START in edit-mode when I open up the form ( another form opens this form )
So that's why I put the code in FORM_LOAD .... how I can I make the cell START in edit-mode, right upon the loading of the form ??
rgd,EE
Alright, as Mike said – it is not possible to set focus on a control on form load – the only solution left is to use a timer with an interval of 100 and call a method that make the cell enter edit mode so users can just type in without the mouse click.
I have prepared the following code for you and it worked.
private void Form1_Load(object sender, EventArgs e)
timer1.Start();
private void timer1_Tick(object sender, EventArgs e)
timer1.Stop();
EnterEditMode();
private void EnterEditMode()
this.ultraGrid1.Focus();
this.ultraGrid1.Rows[0].Cells[0].Activation = Infragistics.Win.UltraWinGrid.Activation.AllowEdit;
this.ultraGrid1.Rows[0].Cells[0].Activate();
UIElement uiElement = this.ultraGrid1.Rows[0].Cells[0].GetUIElement();
EmbeddableUIElementBase embeddableElement = uiElement.GetDescendant(typeof(EmbeddableUIElementBase)) as EmbeddableUIElementBase;
this.ultraGrid1.Rows[0].Cells[0].EditorResolved.EnterEditMode(embeddableElement);
How does that look in VB ?
Hi Mariela,
mariela77 said:How does that look in VB ?
Could you be more specific? This is a 6-year-old thread with a lot of different code in it for various things. So I don't understand what you are asking.
Hi Mike
I was refering to this:
UIElement uiElement =this.ultraGrid1.Rows[0].Cells[0].GetUIElement();
EmbeddableUIElementBase embeddableElement = uiElement.GetDescendant(typeof(EmbeddableUIElementBase)) asEmbeddableUIElementBase;