- ベストアンサー
VB.NETでテキストボックスの入力抑制方法と初期値の設定
- VB.NETでテキストボックスの入力抑制や初期値の設定をする方法について教えてください。
- フォームAのテキストボックスAに入力した内容をフォームBのテキストボックスBに表示し、変更できないようにする方法について教えてください。
- また、テキストボックスBの初期表示を固定し、入力不可にする方法についても教えてください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
こんにちは。 テキストボックスを入力不可にする方法として、Enabled=False以外ではReadOnlyプロパティをTrueにする方法があります。 フォームAのテキストボックスAのValidatedイベントに Form2.TextBox1.Text = Me.TextBox1.Text If Me.TextBox1.Text = "" Then Form2.TextBox1.ReadOnly = True Form2.TextBox1.BackColor = Color.White Else Form2.TextBox1.ReadOnly = False End If Form2.Show() と入れます。 どうでしょうか。
その他の回答 (1)
- temtecomai2
- ベストアンサー率61% (656/1071)
逆に質問したいのですが、フォームA 上で何が起こったときにフォームB が起動するのですか読めません。 質問文の中では 1) テキストボックスA に入力した文字が確定したとき 2) 何も入力せずに の 2パターンでフォームB が起動するような説明をなさっています。 「入力した文字が確定したとき」というのは具体的にユーザーが何をした時をイメージしていますか? 「何も入力しない」ってケースでは何をトリガーにしてフォームB を起動させるのですか? それ以外の部分は、フォームA のプロシージャから Dim formB As New フォームB として フォームB のインスタンスを作っておいて、 条件に応じて formB.テキストボックスB.Text = xxxx formB.テキストボックスB.ReadOnly = True などを設定し、 最後に formB.Show または formB.ShowDialog(Me) でフォームB のインスタンスを表示すれば良いかと。
お礼
テキストボックスの入力制御の方法だけ シンプルに聞けばよかったですね。 条件分岐で悩んでいるわけではありません。
お礼
お礼が遅くなりまして申し訳ありません。 まさに理想通り、こういう状態で入力を受け付けないように したかったのでした。 ありがとうございました。