投稿者 葉月  (社会人) 投稿日時 2010/5/21 01:12:45
こんばんは。

Dim Table As DataTable = DirectCast(DataGridView1.DataSource, DataTable)


DataTable型にキャスト(型変換)しています。
プログラミングになれると、自然にキャストする癖がつきます。
プログラムの量が増えると、暗黙の型変換が原因で実行時に想定していた動きに
ならないケースがあります。
型変換によるミスは、見つかりにくい厄介な問題に進展するケースがあります。

そういう経緯があり、Option StrictはOnにした方がいいよという方が出てきます。
私の意見は既に述べているので省略します。

回答としては、hoidoさんが述べていますが――
「CIntやToString等を付けてエラーを回避するのが基本なのでしょうか」
になります。
それから、CTypeによるキャストも覚えておくといいですよ。

Option Strict Offのままでもいいと思いますが、
気付いたところはキャストした方がいいですね。
最後に関連するURLを載せますので、よかったら見てください。

>>>SqlServerから読み込んだ場合すべてObject型として認識されるのでしょうか?
私の推測が外しているので、Object型で宣言はしていません。
' この場合はDataTable型になります。 
Dim Table As DataTable