2016-05-04 27 views
-1

VBAからVB.NETへのアップグレードを試しているので、私はやりとりしたことの構文の違いを理解することでかなり基本的なことを学んでいます。これまでのところとても良いですが、フォームの表示値を更新するテキストボックスが表示されるようです。誰かが私がなぜばかだと説明したいですか?私はいくつかの時間を過ごして、さまざまなインターウェブのものをサーフィンしましたが、何かを見つけることはまだありません(私がダムでなければ、それを見たときにそれを理解できませんでした)。TextBox値がクリックコマンドで更新されない

は、ここで私がこれまで持っているものです。

Dim this As String = Trim$(Mid$(TextBox1.Text, InStr(TextBox1.Text, "&") + 1)) 
    Dim oldtxt As String = TextBox1.Text 
    If InStr(TextBox1.Text, "&") > 0 Then 
     TextBox1.Text = TextBox1.Text.Replace(TextBox1.Text, "End Date Copied" & this) 
     Clipboard.SetText(this) 
     Threading.Thread.Sleep(2000) 
     TextBox1.Text = TextBox1.Text.Replace(TextBox1.Text, oldtxt) 
    End If 
+0

ので、うまくいけば、同じようにこの仕事のためのイベントを入力し、クリックして、あなたは、デバッグがありますか?コードの先頭にブレークポイントを設定し、各ステップでステートを調べて、それが期待どおりのものかどうかを調べます。 – jmcilhinney

+1

それは、 'Thread.Sleep'を挟んで1つのイベントハンドラで' Text'を2回設定するだけです。あるテキストセットを表示し、その後に別のテキストセットを表示したい場合は、そのイベントハンドラで最初のテキストを設定してから、「タイマー」を開始します。 'Timer'の' Tick'イベントハンドラに2番目のテキストを設定することができます。 – jmcilhinney

+1

タイトルに「クリックコマンド」がありますが、「テキストボックス」には「Enter」イベントが使用されています。ボタンがクリックされたとき、またはユーザが 'TextBox'(この例では、' TextBox1'と呼ばれる 'TextBox')を入力したときに、このテキストを更新しますか? – TEK

答えて

0

私は、解像度のより多くの「バンドエイド」タイプを見つけることができたのVisual StudioのUIを掘り後。私はSubString関数に悩まされていませんが、それは私の次の学習ステップです。私は、このオプションが即時解決で十分であることを発見しました。私がこれを実装するより良い方法を見つけたら、(もし気にして)見えるように他の人に返信します。

Private Sub TextBox1_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles Block1.Enter 
Dim this As String = Trim$(Mid$(TextBox1.Text, InStr(TextBox1.Text, "&") + 1)) 
Dim oldtxt As String = TextBox1.Text 
If InStr(TextBox1.Text, "&") > 0 Then 
     TextBox1.Text = TextBox1.Text.Replace(TextBox1.Text, "End Date Copied" & this) 
     Block1.Refresh() 
     Clipboard.SetText(this) 
     Threading.Thread.Sleep(200) 
     TextBox1.Text = TextBox1.Text.Replace(TextBox1.Text, oldtxt) 
     Block1.Refresh() 
End If 
End Sub 

そして、ちょうどFYI @TEKためには、あなたは文句を言わない不必要な詳細のハングアップを取得誰かを試してみて、助け次回:)

+0

'TextBox値がクリックコマンドで更新されない '、あなたのコードが* Enter *イベントを使用していましたか? TEKは非常に関連性の高い発言をしていました。あなたは、*必要な*詳細を掛けるために*必要なものです*。あなたはより良い助けを得るでしょう。 – LarsTech

+0

イベントハンドラがコードの実行が実際にやろうとしていたこととは何の関係がないのかをよく見ています。文字通り、イベントハンドラは他のものとほとんど同じである可能性があり、最終的な結果は同じになります。私はその部分を完全に省き、同じ問題を抱えていただろう。だからそれは関連性がなく、文字通り私の質問が実際に参照していたものとは関係がありませんでした。しかし、ありがとう。 –

+1

なぜこのコードでReplaceをまったく使用していますか?それは本当に必要ではありません。 'TextBox1.Text =" End Date Copied "&this'とそれ以降の' TextBox1.Text = oldtxt'を使うだけで、コードを読みやすくすることができます。 –

関連する問題