By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
435,315 Members | 2,150 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 435,315 IT Pros & Developers. It's quick & easy.

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

P: n/a

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
Nov 18 '05 #1
Share this Question
Share on Google+
1 Reply


P: n/a
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
Nov 18 '05 #2

This discussion thread is closed

Replies have been disabled for this discussion.