Solved

VB.Net, Catch "DataGridView Default Error Dialog" Exception

Posted on 2012-04-02
8
1,656 Views
Last Modified: 2012-04-03
Hi Experts,

I am  using VB.Net and datagridview.

In my gridview I have got three columns. And in the second and third column I have set the format to currency.

The main problem is, if there was any error raised, an DataGridView Default Error Dialog box is shown. But to avoid that error dialog box , data error Event is used.

But what I need is that I need to catch that error in a try catch block, but I don't know where to put the try catch block to catch the error.

The error occurs when I leave a cell blank and move to another cell
0
Comment
Question by:baabaa_nl
  • 3
  • 3
  • 2
8 Comments
 
LVL 17

Expert Comment

by:nepaluz
ID: 37798227
set a defaut value for the column where the cell belongs.
0
 
LVL 17

Accepted Solution

by:
nepaluz earned 250 total points
ID: 37798280
or you can handle the cellvalidating event, aka
If String.IsNullOrEmpty(e.FormattedValue) Then
         e.Cancel = True
     Else
         e.Cancel = False
End If

Open in new window

0
 

Author Comment

by:baabaa_nl
ID: 37798290
i tried that code, and it was eliminating the check box. but wat i need is to catch that error my self using a try catch block, but i dont know where to put the try catch block
0
Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

 
LVL 17

Expert Comment

by:nepaluz
ID: 37798318
put a check for the respective column before applying the code!
Else you will need to put your try-catch in the CellEndEdit event
0
 

Author Comment

by:baabaa_nl
ID: 37798346
I didn't  understand the first part of your comment about
>>put a check for the respective column before applying the code!


Also i was using DataError Event, and not the CellEndEdit Event.

Also, i tried using a try catch block for the CellEndEdit event, but it didnt make use of it, it was as if the try catch block was ignored.
0
 
LVL 83

Assisted Solution

by:CodeCruiser
CodeCruiser earned 250 total points
ID: 37801944
You can not use try catch block here as its not an exception. It is a Data Error!
0
 

Author Comment

by:baabaa_nl
ID: 37802150
Hi CodeCruiser,

I really don't know from which part of the code the exception is raised, but the only way to stop it is by using the dataerror event.

But the main problem is, the exception is due to many reason, one could be due to a null value and other due to incorrect double format and many more. but in order for me to specifically to catch the exception, I require the try catch block, but I don't know where to put it.

so is there anyway that I could find the cause of the reason of the exception on the dataerror event.

This may sound really false, but I feel that the error is raised from the designer code? Is that possible.

Thanks in advance.
0
 
LVL 83

Assisted Solution

by:CodeCruiser
CodeCruiser earned 250 total points
ID: 37802222
>the exception is due to many reason, one could be due to a null value and other due to incorrect double format and many more. but in order for me to specifically to catch the exception, I require the try catch block, but I don't know where to put it

Again. That is not exception. That is data error. It is raised by DataGridView when it tries to commit the value to underlying data layer (datatable). It then uses the DataError to notify you of the problem. Try using the e parameter in DataError to see if you can get any info.
0

Featured Post

Announcing the Most Valuable Experts of 2016

MVEs are more concerned with the satisfaction of those they help than with the considerable points they can earn. They are the types of people you feel privileged to call colleagues. Join us in honoring this amazing group of Experts.

Question has a verified solution.

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

Introduction When many people think of the WebBrowser (http://msdn.microsoft.com/en-us/library/2te2y1x6%28v=VS.85%29.aspx) control, they immediately think of a control which allows the viewing and navigation of web pages. While this is true, it's a…
Microsoft Reports are based on a report definition, which is an XML file that describes data and layout for the report, with a different extension. You can create a client-side report definition language (*.rdlc) file with Visual Studio, and build g…
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…
In an interesting question (https://www.experts-exchange.com/questions/29008360/) here at Experts Exchange, a member asked how to split a single image into multiple images. The primary usage for this is to place many photographs on a flatbed scanner…

829 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