DOBON.NET DOBON.NETプログラミング掲示板過去ログ

C#.NET

環境/言語:[Windows XP]
分類:[.NET]

初めてここをたずねました。カズと申します。
テキストボックスA,B,Cに入力してからタブ移動させると、テキストボックスDに数値(ABCを用いて計算したもの)が出力するのがどうも出来ません。
どなたか知ってらっしゃるかたがおられたら、教えていただけないでしょうか?
宜しくお願いします。
■No16460に返信(カズさんの記事)
> テキストボックスA,B,Cに入力してからタブ移動させると、
> テキストボックスDに数値(ABCを用いて計算したもの)が出力するのがどうも出来ません。

現状の実装がここからは見えてきません。
通常は、Leave イベントに計算結果を TextBoxD.Text に設定すれば問題ないと思います。
検証込みの場合は、Validating イベントで行います。

# タイトルは適切につけた方が、後々の益になりやすいと思います。
ありがとうございます。
じゃんぬねっとさんの通りにやってみたのですが、まだ解決されません。
地道にいろいろ試したりして解決していきます。
■No16578に返信(カズさんの記事)
> ありがとうございます。
> じゃんぬねっとさんの通りにやってみたのですが、まだ解決されません。
> 地道にいろいろ試したりして解決していきます。

もしかすると、ニュアンスが伝わっていないだけかもしれません。
VB8 の例だと以下のようになります。

    Private Sub TextBoxA_Leave(ByVal sender As Object, ByVal e As System.EventArgs) Handles TextBoxA.Leave
        Me.CalculationTextBoxD()
    End Sub

    Private Sub TextBoxB_Leave(ByVal sender As Object, ByVal e As System.EventArgs) Handles TextBoxB.Leave
        Me.CalculationTextBoxD()
    End Sub

    Private Sub TextBoxC_Leave(ByVal sender As Object, ByVal e As System.EventArgs) Handles TextBoxC.Leave
        Me.CalculationTextBoxD()
    End Sub

    Private Sub CalculationTextBoxD()
        Dim valueA As Integer = 0
        If Not Integer.TryParse(Me.TextBoxA.Text, valueA) Then
            Return
        End If

        Dim valueB As Integer = 0
        If Not Integer.TryParse(Me.TextBoxB.Text, valueB) Then
            Return
        End If

        Dim valueC As Integer = 0
        If Not Integer.TryParse(Me.TextBoxC.Text, valueC) Then
            Return
        End If

        Me.TextBoxD.Text = (valueA + valueB + valueC).ToString()
    End Sub

もし、VB7 以前であれば、TryParse のところは、置き換えをお願いします。
じゃんぬねっとさん
ありがとうございました。
今回はjavascriptを使って解決しました。
さまざまな解決策を導いていただきありがとうございました。
解決済み!
■No16706に返信(カズさんの記事)
> 今回はjavascriptを使って解決しました。
> さまざまな解決策を導いていただきありがとうございました。

どうやら、Web アプリケーション (ASP.NET) だったようですね。
であれば、私のは全然解決策ではないですね...
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板