"Input string was not in a correct format." Error when returning DataViewRow as a form property

G

Guest

I've been attempting to pass a chunk of data back from a child Windows form using public properties on the form and have been getting some odd errors. I wanted to return a row of data to avoid creating many public properties on the form to do the same thing. At first I tried returning a DataViewRow. This worked fine until I reached the phone field on the parent table and the code

Child form
public DataRowView SelectedAddres

ge

return drvAddress



Parent form
this.txtBTPhone.Text = fAddrSearch.SelectedAddress["Phone"].ToString( )

produced the following error
-----------------------------------------------------------------------------------------------
An unhandled exception of type 'System.FormatException' occurred in mscorlib.dl

Additional information: Input string was not in a correct format
-----------------------------------------------------------------------------------------------

The phone field is a string data type in the dataset on the child table and the actual value of the field was something like "123-456-7890"

At first, I thought this was because the DataRowView wasn't serializing the type information so I thought that I would try using a DataRow from a strongly-typed dataset like this

Child form
public AddressDataset.AddressRow SelectedAddres

ge

return rwAddress



Parent form
this.txtBTPhone.Text = fAddrSearch.SelectedAddress.Phone

This still didn't work - neither did using System.Convert.ToString() or the ToString method of the data row field. I also noticed that null values produced these same results. I tried using the "IsPhoneNull" method of the typed data row but the problem is that the error occurs before method is invoked. It's as if the type is not known and there is no default type converter that will handle these types of data. Something is obviously assuming that the phone number is an integer data type just because the first character is numeric

The only thing that I thought might be causing this is that it might have something to do with the return statement only returning value types. Has anyone else seen this problem? Is it a bug or by design

John Chorlton
 
G

Guest

OK ...ignore the above post.

For those who want to know, the problem turned out to be due to an assignment to a combo box on the parent form in the statement prior to the phone statement. The value member of the combo box was set to an integer but the SelectedValue that I was assigning was a string - simple. The reason that this threw me off is that the Visual Studio debugger does not break on the combo box assignment line but on the line following the assignment. This still seems strange because it's not consistent with the usual action of the debugger

John
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,769
Messages
2,569,582
Members
45,070
Latest member
BiogenixGummies

Latest Threads

Top