お世話になります
FormView1内にあるテキストボックス内の計算をさせたいのですが
FormView1のTEXTBOXが見当たらず困っています
環境visualstudio2005standard
sql
web
VB
書籍を購入して下記を作成しました。通常なら下記で動作確認は出来ました。
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs)
Dim intnyuukin As Integer
Dim intsiharai As Integer
Dim intgoukei As Integer
intnyuukin = Val(TextBox1.Text)
intsiharai = Val(TextBox2.Text)
intgoukei = intnyuukin - intsiharai
TextBox3.Text = intgoukei
End Sub
で合計が計算されのですがFormView1内にあるばあいTextBox1、TextBox2が見当たらないみたいで
宣言させていませんと怒られます。
構成はMultiView1、View1にGridView選択で
View2へ移動させてFormViewを表示させて頂いております。
分かる方宜しくお願い申し上げます
No.1
- 回答日時:
この回答への補足
お返事有難うございます
このページは当方も確認済みでC#からVBへの変換ツールを使用して実装しましたが不可でした
そのときのコードは破棄してしまいましたが不可能でした
ずっと悩んでいた問題で解決すればぐっと広がるのですが何とか解決に導いていただければ幸いです
なにとぞ宜しくお願い申し上げます
No.2
- 回答日時:
## FormViewは使っていないし試せる環境がないのでどんな名前を指定するのかはわかりませんけど
>FormView1内にあるばあいTextBox1、TextBox2が見当たらないみたいで
FormView1の外にあるボタンからみると、FormView1しか見当たらないので
FormView1.TextBox1とかしないとだめでしょう。
#1のかたがつけておられるQ/Aをみたら、
FormView.Row.FindControl("TextBox2")
としてもよさそうですけど、
FormView1.まで入力したら候補がならんででてきませんか?
(たぶん、その中から選んだほうが早いかと。)
No.3
- 回答日時:
No.2の回答は的外れです。
ASP.NETのFormViewは、その内部のコントロールまで、オブジェクト階層で指定できません。
No.1のonos師匠の回答が正しいです。VB.NETふうに書くと、
Dim TextBox1 as TextBox
TextBox1 = DirectCast(FormView1.Row.FindControl("TextBox1"), TextBox)
' TextBox1 = Ctype(FormView1.Row.FindControl("TextBox1"), TextBox) でもおK
でTextBox1が参照できます。
この回答への補足
お返事有難うございます
おそらく無事参照できましたが形が変わってしまい思うような計算が出来ません
その後どのようにすれば計算できますか?
No.4ベストアンサー
- 回答日時:
> おそらく無事参照できましたが形が変わってしまい思うような計算が出来ません
> その後どのようにすれば計算できますか?
Dim TextBox1 as TextBox
TextBox1 = DirectCast(FormView1.FindControl("TextBox1"), TextBox) 'Rowはあってもなくても同じです
で、TextBox1.Textで入力値が取得できるのでは?
(注意)
FormViewはデータバインド系のコントロールなので、何らかのデータソースをBindしてやらないと、内容が実体化しませんが、その点は大丈夫ですよね?
GridViewで取得されたIDをもとにDataSourceを取得してDataBindするなりしていますか? ということです。
もしNoであれば、上記TextBox1はNothingになり(=FormView内に存在しない)、そのTextプロパティを求めると例外が発生します
有難うございます
下記にて実行できました
本当に助かりました有難うございますm(__)m
Protected Sub FromView1_Button2_Click(ByVal sender As Object, ByVal e As System.EventArgs)
Dim TextBox1 As TextBox
Dim TextBox2 As TextBox
Dim intnyuukin As Integer
Dim intsiharai As Integer
Dim intgoukei As Integer
TextBox1 = DirectCast(FormView1.Row.FindControl("TextBox1"), TextBox)
TextBox2 = DirectCast(FormView1.Row.FindControl("TextBox2"), TextBox)
TextBox3 = DirectCast(FormView1.Row.FindControl("TextBox3"), TextBox)
intnyuukin = Val(TextBox1.Text)
intsiharai = Val(TextBox2.Text)
intgoukei = intnyuukin - intsiharai
TextBox3.Text = intgoukei
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 九九の答えの計算 3 2022/12/20 22:13
- Excel(エクセル) エクセルのマクロについて教えてください。 2 2023/02/20 14:46
- Visual Basic(VBA) エクセルのマクロについて教えてください。 3 2023/02/22 08:53
- Visual Basic(VBA) ユーザーフォームの書き出しで追加のご相談 ユーザーフォームの値をシートに書き出す際、コードが表示され 2 2022/08/05 10:58
- Visual Basic(VBA) VBA 重複チェック後に値をワークシートに転記する方法を教えてください。 1 2023/03/19 12:43
- Visual Basic(VBA) エクセルのマクロについて教えてください。 3 2023/02/17 11:59
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2023/02/20 16:59
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/02/21 11:19
- Visual Basic(VBA) VBAプログラミング 2 2022/11/27 12:07
- Visual Basic(VBA) エクセルのマクロについて教えてください。 7 2023/07/04 09:18
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
数値計算の高速化 (cos, sin, exp)
-
Perlでのルートの計算
-
Vb6.0で三角関数が使えない
-
VBAの再計算が反映されない件に...
-
Visual C++でdebugとreleaseで...
-
[急募]Pythonについてです。
-
R言語での極小値の指数形式での...
-
スライムがつぶれていく様子を...
-
60進数の四則計算
-
VB6.0でのバイナリデータの扱い...
-
傾いた四角形内の範囲の条件式
-
EXCELなどで「返す」という表現
-
VB6で正確なミリ秒を計測したい...
-
CとFORTRANの計算速度はどちら...
-
Excel VBAの残業時間の合計計算...
-
VBでReplace
-
10進数から8進数へ
-
順列のプログラムについて(VB)
-
Javascrptの0の掛け算
-
エクセルで特定のセルのみを任...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
65536は2の何乗なのでしょうか?
-
VBAの再計算が反映されない件に...
-
排他的論理和 BCC(水平パリテ...
-
EXCELなどで「返す」という表現
-
C言語の課題で、1年の秒数を計...
-
バッチファイルでウインドウを...
-
骨折リスク評価のFRAXについて...
-
変化させるセルが変化しない
-
CとFORTRANの計算速度はどちら...
-
なぜオーバーフローになるので...
-
数値計算の高速化 (cos, sin, exp)
-
モジュラス103の計算とは何でし...
-
C# 計算処理中に実行中ウィン...
-
モジュロ
-
引き放し法による除算アルゴリ...
-
60進数の四則計算
-
C言語についてです。 再帰を使...
-
Perlで時間の計算
-
CRC8を教えてください
-
傾いた四角形内の範囲の条件式
おすすめ情報