Basic Library for WPF/Silverlight
手順 3:アプリケーションへのコードの追加
製品の概要 > NumericBox > NumericBoxクイックスタート > 手順 3:アプリケーションへのコードの追加

これまでの手順では、アプリケーションのユーザーインターフェイスを設定し、C1NumberBoxLabelButton の各コントロールをアプリケーションに追加しました。この手順では、アプリケーションにコードを追加して完成させます。

次の手順に従います。

  1. Button1 をダブルクリックしてコードビューに切り替え、Button1_Click イベントハンドラを作成します。

  2. 次の imports 文をページの先頭に追加します。

Visual Basic
コードのコピー
Imports C1.WPF
Imports System.Windows.Media
Imports System.Diagnostics
C#
コードのコピー
using C1.WPF;
using System.Windows.Media;
using System.Diagnostics;
  1. MainWindow or Page クラスのすぐ内側にある次のグローバル変数を初期化します。

Visual Basic
コードのコピー
Dim nb1 As Integer = 5
Dim nb2 As Integer = 2
Dim nb3 As Integer = 3
Dim nb4 As Integer = 7
Dim nb5 As Integer = 9
C#
コードのコピー
int nb1 = 5;
int nb2 = 2;
int nb3 = 3;
int nb4 = 7;
int nb5 = 9;

これらの数字は、正しい「暗証番号」としてアプリケーションで使用されます。ユーザーが実行時に正しい番号の組み合わせを入力すると、ボタンが表示されます。

  1. Button1_Click イベントハンドラにコードを追加します。次のようになります。

Visual Basic
コードのコピー
Private Sub btn1_Click(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles btn1.Click
    HtmlPage.PopupWindow(New Uri("http://www.componentone.com"), "new", Nothing)
End Sub
C#
コードのコピー
private void btn1_Click(object sender, RoutedEventArgs e)
{
    HtmlPage.PopupWindow(New Uri("http://www.componentone.com"), "new", null);
}
  1. 次に、以下のカスタム NBValidation イベントをコードに追加します。

Visual Basic
コードのコピー
Private Sub NBValidation()
    If Me.c1nb1.Value = nb1 And Me.c1nb2.Value = nb2 And Me.c1nb3.Value = nb3 And Me.c1nb4.Value = nb4 And Me.c1nb5.Value = nb5 Then
        Me.lbl2.Foreground = New SolidColorBrush(Colors.Green)
        Me.lbl2.Content = "Combination Valid"
        Me.c1nb1.IsReadOnly = True
        Me.c1nb2.IsReadOnly = True
        Me.c1nb3.IsReadOnly = True
        Me.c1nb4.IsReadOnly = True
        Me.c1nb5.IsReadOnly = True
        Me.btn1.Visibility = Windows.Visibility.Visible
    End If
End Sub
C#
コードのコピー
private void NBValidation()
{
    if (this.c1nb1.Value == nb1 & this.c1nb2.Value == nb2 & this.c1nb3.Value == nb3 & this.c1nb4.Value == nb4 & this.c1nb5.Value == nb5)
    {
        this.lbl2.Foreground = new SolidColorBrush(Colors.Green);
        this.lbl2.Content = "Combination Valid";
        this.c1nb1.IsReadOnly = true;
        this.c1nb2.IsReadOnly = true;
        this.c1nb3.IsReadOnly = true;
        this.c1nb4.IsReadOnly = true;
        this.c1nb5.IsReadOnly = true;
        this.btn1.Visibility = Windows.Visibility.Visible;
    }
}

ユーザーが(上の手順 3で示した)正しい番号を入力すると、C1NumericBox コントロールは読み取り専用に設定されて編集できなくなります。コントロールの下にあるラベルのテキストは、正しいコードが入力されていることを示すように変更されます。また、ComponentOne Web サイトに移動するためのボタンが表示されます。

  1. C1NumericBox1_ValueChanged イベントハンドラにコードを入力して、NBValidation を初期化します。次のようになります。
Visual Basic
コードのコピー
Private Sub c1nb1_ValueChanged(ByVal sender As System.Object, ByVal e As C1.Silverlight.PropertyChangedEventArgs(Of System.Double)) Handles c1nb1.ValueChanged
    NBValidation()
End Sub
Private Sub c1nb2_ValueChanged(ByVal sender As System.Object, ByVal e As C1.Silverlight.PropertyChangedEventArgs(Of System.Double)) Handles c1nb2.ValueChanged
    NBValidation()
End Sub
Private Sub c1nb3_ValueChanged(ByVal sender As System.Object, ByVal e As C1.Silverlight.PropertyChangedEventArgs(Of System.Double)) Handles c1nb3.ValueChanged
    NBValidation()
End Sub
Private Sub c1nb4_ValueChanged(ByVal sender As System.Object, ByVal e As C1.Silverlight.PropertyChangedEventArgs(Of System.Double)) Handles c1nb4.ValueChanged
    NBValidation()
End Sub
Private Sub c1nb5_ValueChanged(ByVal sender As System.Object, ByVal e As C1.Silverlight.PropertyChangedEventArgs(Of System.Double)) Handles c1nb5.ValueChanged
    NBValidation()
End Sub
C#
コードのコピー
private void c1nb1_ValueChanged(object sender, PropertyChangedEventArgs<double> e)
{
    NBValidation();
}
private void c1nb2_ValueChanged(object sender, PropertyChangedEventArgs<double> e)
{
    NBValidation();
}
private void c1nb3_ValueChanged(object sender, PropertyChangedEventArgs<double> e)
{
    NBValidation();
}
private void c1nb4_ValueChanged(object sender, PropertyChangedEventArgs<double> e)
{
    NBValidation();
}
private void c1nb5_ValueChanged(object sender, PropertyChangedEventArgs<double> e)
{
    NBValidation();
}

この手順では、アプリケーションにコードを追加しました。次の手順では、アプリケーションを実行し、実行時の操作を確認します。