- PR -

TextBoxで値が表示されているのに値が取得できない

投稿者投稿内容
まどか
ぬし
会議室デビュー日: 2005/09/06
投稿数: 372
お住まい・勤務地: ますのすし管区
投稿日時: 2006-04-26 17:38
・現象が異なるPCでアセンブリのバージョンは一緒か?
・見た目が"1"はラベルのことで実は裏にTextBoxが存在する

思いつくのはこのくらいで。。。
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-04-26 18:06
とりあえず、確実に同一のソースを、クリーン ビルドして実行ですね。
フォームに配置された TextBox1 は本当に TextBox1 のインスタンスなのでしょうか?

とりあえず、別の Button イベントで MessageBox.Show(Me.TextBox1.Text) ですね。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2006-04-27 22:36
発生している問題とは別の問題について。

 Windows アプリケーションの場合、問題になることはほとんどないと思いますが、今後 Web アプリケーションを作成するようなことがないとも限らないでしょうから。
引用:
コード:
Dim strSql as String

strSql = "Select a,b,c "
strSql = strSql & "From DB "
strSql = strSql & "WHERE aa = " & TextBox1.Text & " "
strSql = strSql & "AND bb = " & ComboBox1.SelectedItem & " "



これ、やめましょう。
 今回 TextBox1.Text が取れていないことで問題になったように、 Web でこんなことやっていると、SQL Injection の脆弱性を作り込むことになります。
 Windows アプリケーションでも脆弱性として存在しているのですが、アプリケーションにアクセスできる人が限られるので問題になりにくい、というだけです。

 で、今回「TextBox1 には、必ず数字を入力してください」ということになっているのだと思いますが。それは口頭で説明してあるだけで、コードでガードしていないのでしょうか。
# していないから SQL でエラーになったのでしょうけど
# 本当に数字を入力してくれることを、無条件で期待してもいいのでしょうか?

 VB.NET を Option Strict Off で使用されていますね?ComboBox1.SelectedItem は Object 型であるため、本来はこのような文字連結は出来ません。

スキルアップ/キャリアアップ(JOB@IT)