Solved

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

Posted on 2012-04-02
8
1,621 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
Comment Utility
set a defaut value for the column where the cell belongs.
0
 
LVL 17

Accepted Solution

by:
nepaluz earned 250 total points
Comment Utility
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
Comment Utility
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
 
LVL 17

Expert Comment

by:nepaluz
Comment Utility
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
Top 6 Sources for Identifying Threat Actor TTPs

Understanding your enemy is essential. These six sources will help you identify the most popular threat actor tactics, techniques, and procedures (TTPs).

 

Author Comment

by:baabaa_nl
Comment Utility
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
Comment Utility
You can not use try catch block here as its not an exception. It is a Data Error!
0
 

Author Comment

by:baabaa_nl
Comment Utility
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
Comment Utility
>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

Highfive + Dolby Voice = No More Audio Complaints!

Poor audio quality is one of the top reasons people don’t use video conferencing. Get the crispest, clearest audio powered by Dolby Voice in every meeting. Highfive and Dolby Voice deliver the best video conferencing and audio experience for every meeting and every room.

Join & Write a Comment

Suggested Solutions

Introduction As chip makers focus on adding processor cores over increasing clock speed, developers need to utilize the features of modern CPUs.  One of the ways we can do this is by implementing parallel algorithms in our software.   One recent…
Creating an analog clock UserControl seems fairly straight forward.  It is, after all, essentially just a circle with several lines in it!  Two common approaches for rendering an analog clock typically involve either manually calculating points with…
Internet Business Fax to Email Made Easy - With eFax Corporate (http://www.enterprise.efax.com), you'll receive a dedicated online fax number, which is used the same way as a typical analog fax number. You'll receive secure faxes in your email, fr…
This demo shows you how to set up the containerized NetScaler CPX with NetScaler Management and Analytics System in a non-routable Mesos/Marathon environment for use with Micro-Services applications.

771 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

Need Help in Real-Time?

Connect with top rated Experts

10 Experts available now in Live!

Get 1:1 Help Now