Solved

Cell edit of datagridview

Posted on 2006-10-23
2
710 Views
Last Modified: 2008-02-01
Below is a routine I'm designing associated with editing a datagridview.  Currently my select case = 1 does not require the user to click directly in the box to modify the checkbox.  I'm trying to design code for case 7 and 8 which are columns 7 and 8.

    Private Sub grdviewInvoices_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles grdviewInvoices.MouseUp
        Dim hitTest As DataGridView.HitTestInfo = grdviewInvoices.HitTest(e.X, e.Y)
        If hitTest.Type = DataGridViewHitTestType.Cell Then
            Dim drvInvoice As DataRowView
            drvInvoice = dvInvoice(hitTest.RowIndex.ToString)
            drvInvoice.BeginEdit()
            Select Case hitTest.ColumnIndex.ToString
                Case Is = 1 ' checkbox
                    If dvInvoice(hitTest.RowIndex.ToString)("apply").ToString = True Then
                        drvInvoice("apply") = False
                    Else
                        drvInvoice("apply") = True
                    End If
                Case Is = 7 ' payment_amount
                Case Is = 8 ' credit_to_be_applied
            End Select
            drvInvoice.EndEdit()
        End If
    End Sub


My columns 7 and 8 are editable $$ fields that I would like to have work in the following manner when the user clicks on them.

By default it works this way:
1) 1st time you click a cell.....it highlights the COMPLETE cell.
2) 2nd time you click a cell....it highlights the cell value (which includes the $ since DefaultCellStyle.Format = "C") .

I would like for it to work this way:
1) The $ is stripped from the value.
2) 1st click....highlights the cell value.

I don't know if it's possible but any efforts to help would be greatly appreciated!

Sincerely,
Phil Tate
0
Comment
Question by:TSFLLC
2 Comments
 
LVL 10

Accepted Solution

by:
gangwisch earned 500 total points
ID: 17789867
highlights complete cell
if numclicks=1 then
datagridview1.item(e.columnindex,e.rowindex).selected=true
else
datagridview1.item(e.columnindex,e.rowindex).value=replace(datagridview1.item(e.columnindex,e.rowindex).value,"$","") 'strips off $ sign
datagridview1.item(e.columnindex,e.rowindex).beginedit

end if
0
 

Author Comment

by:TSFLLC
ID: 17790378
with the defaultcellstyle.format = "C" it doesn't appear to be able to strip the $, but that's not a great issue.

Also, with datagridview1.beginedit(True) selects the entire cell value of the current field.

This at least got me in the right direction.

Thanks.
0

Featured Post

Networking for the Cloud Era

Join Microsoft and Riverbed for a discussion and demonstration of enhancements to SteelConnect:
-One-click orchestration and cloud connectivity in Azure environments
-Tight integration of SD-WAN and WAN optimization capabilities
-Scalability and resiliency equal to a data center

Question has a verified solution.

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

Suggested Solutions

Well, all of us have seen the multiple EXCEL.EXE's in task manager that won't die even if you call the .close, .dispose methods. Try this method to kill any excels in memory. You can copy the kill function to create a check function and replace the …
It was really hard time for me to get the understanding of Delegates in C#. I went through many websites and articles but I found them very clumsy. After going through those sites, I noted down the points in a easy way so here I am sharing that unde…
Finds all prime numbers in a range requested and places them in a public primes() array. I've demostrated a template size of 30 (2 * 3 * 5) but larger templates can be built such 210  (2 * 3 * 5 * 7) or 2310  (2 * 3 * 5 * 7 * 11). The larger templa…

790 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