VB.NETを触り始めたばかりです。
なぜこのようなことが起きるのか、ご存じの方教えていただきたいです。
【やりたいこと】
Stringとして明け渡した値をStringのまま表示
【現在】
Stringとして明け渡した値がIntegerとして表示される
VB.NET
1Dim dt As DataTable 'DataGridViewの内容がすでにdtに格納されている前提 2 3'"0000000001" 4Dim CustomerCode As String = String.Format("{0:D10}",1) 5'1(Integer) 6dt.Rows(0)("CUSTOMERCODE") = CustomerCode 7
上記のように文字列型「0000000001」として入るはずが、実際には数値型「1」として入ってしまいます。
VB.NET
1Dim dt As DataTable 'DataGridViewの内容がすでにdtに格納されている前提 2 3'"000000001_A" 4CustomerCode = String.Format("{0:D10}",1) & "_A"
上記でやると型のエラーとして突き返されてしまいます。
DBから持ってきた情報を一度DataGridViewにセットしている場合
上記は空のグリッドにいちから手入力した際のものなのですが、
DB → DataGridView → DataTable → DB
の順で処理をしたとき、
「Stringで明け渡したはずのデータがInteger」になるのは、DBから情報を持ってきたときの、手入力で編集したカラムがInteger型だから、ということなのでしょうか?
グリッドの手入力データが全て数字だけだった場合、Integer型とみなして、String.Formatでゼロ埋めしたデータをIntegerに変換してしまうのでしょうか?
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。