Solved

How can I cause a DataGridView Cell to begin edit mode when a user hits a numeric key?

Posted on 2008-10-08
9
1,398 Views
Last Modified: 2008-10-22
If a user has a row selected I don't want them to have to double click to edit (there is only one column that will ever need to be edited anyway).  I want them to simply begin typing and have that certain cell (always the 5th column) in the current row to begin edit mode.  That way they can just use the keyboard and move from row to row editing this one column of data without every using the mouse.  Again, the other columns will never need to be edited, just this one.
0
Comment
Question by:David L. Hansen
  • 5
  • 4
9 Comments
 
LVL 48

Expert Comment

by:jpaulino
ID: 22691270
Can you show the code you have ? Normally you don't need to double cick to start editing.
0
 
LVL 15

Author Comment

by:David L. Hansen
ID: 22713999
I have no code attempts.  I'm not sure where to begin.  All I have right now is the datagridview set to fullrowselect mode.  
Now, with that mode being set, the user only highlights a row (when using a single click) instead of editing...no problem so far, this behavior is what I want.  Currently then, the user can only enter edit mode on a single cell by double-clicking on it.  What I want to do is give the user an additional, alternative way of editing cells, in a quick, keyboard approach (ie. they begin typing when a row is highlighted and it automatically begins to edit the cell in column 5 of the current row).
0
 
LVL 48

Expert Comment

by:jpaulino
ID: 22727033
Let me see if I understood ...
You want to keep the selection to full row mode but when the user starts to type it writes on column 5. Is that it ?
0
Master Your Team's Linux and Cloud Stack!

The average business loses $13.5M per year to ineffective training (per 1,000 employees). Keep ahead of the competition and combine in-person quality with online cost and flexibility by training with Linux Academy.

 
LVL 15

Author Comment

by:David L. Hansen
ID: 22732982
Yes, that's exactly what I want.
0
 
LVL 48

Accepted Solution

by:
jpaulino earned 500 total points
ID: 22733205
You can force to select always the same column. Since it's in fullrowselect the user will not notice that and when you start to write, it starts on that colum.
 
Check this example:

    Private Sub DataGridView1_SelectionChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DataGridView1.SelectionChanged
        Me.DataGridView1.CurrentCell = Me.DataGridView1(4, Me.DataGridView1.CurrentRow.Index)
    End Sub

Open in new window

0
 
LVL 15

Author Comment

by:David L. Hansen
ID: 22735179
I think we are on the right track...I like your solution; it doesn't do anything for me though.  I've incorporated the code and it runs without error.  However, when I select a row and begin typing, nothing happens...no errors no changes...nothing.  The row remains selected though.  Are we missing something?
0
 
LVL 48

Expert Comment

by:jpaulino
ID: 22735213
Have you add this code after fill the datagridview ?
Notice that I have used the column number 4 for this snippet and you have to choose the right one.
0
 
LVL 15

Author Comment

by:David L. Hansen
ID: 22735365
I added the code, changed the column number (with a zero based index the column I need is 5), updated the datagridview name and ran the program in debug mode.  The grid fills with data, I highlight a row, then begin typing...nothing happens.  Does it work for you?
0
 
LVL 48

Expert Comment

by:jpaulino
ID: 22736487
>> Does it work for you?
Sure :)  I always test the vode before post here.
Do you use some other code ? Can you show what you have so far ?
0

Featured Post

DevOps Toolchain Recommendations

Read this Gartner Research Note and discover how your IT organization can automate and optimize DevOps processes using a toolchain architecture.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Most everyone who has done any programming in VB6 knows that you can do something in code like Debug.Print MyVar and that when the program runs from the IDE, the value of MyVar will be displayed in the Immediate Window. Less well known is Debug.Asse…
Article by: Martin
Here are a few simple, working, games that you can use as-is or as the basis for your own games. Tic-Tac-Toe This is one of the simplest of all games.   The game allows for a choice of who goes first and keeps track of the number of wins for…
Get people started with the process of using Access VBA to control Outlook using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Microsoft Outlook. Using automation, an Access applic…
Show developers how to use a criteria form to limit the data that appears on an Access report. It is a common requirement that users can specify the criteria for a report at runtime. The easiest way to accomplish this is using a criteria form that a…

776 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question