RequiredFieldValidator
主なプロパティ
* InitialValue
=> 検証コントロールの初期値(初期値から変更されているかを判定される)
例1:数当て
* RequiredFieldValidator/RangeValidatorを使用してみる
* Label : 1
* Button : 2 (回答用ボタンおよび再ゲーム用ボタン)
* TextBox : 1
* RequiredFieldValidator : 1
+ ControlToValidate : TextBoxを指定
+ Display : Dynamic
+ ErrorMessage : "Need to input a number!"
+ SetFocusOnError : True
* RangeValidator : 1
+ ControlToValidate : TextBoxを指定
+ Display : Dynamic
+ ErrorMessage : "Choose a number between 1 and 50!!"
+ MaximumValue : 50
+ MinimumValue : 1
+ SetFocusOnError : True
+ Type : Integer
サンプル
Answer.vb
Public Enum Answer
Correct
Bigger
Less
End Enum
Public Module AnswerExtensions
<Extension()>
Public Function ToAnswer(answer As Answer) As String
Dim answers As New Dictionary(Of Answer, String) From _
{
{answer.Correct, "Correct!!"},
{answer.Bigger, "Bigger!"},
{answer.Less, "Less..."}
}
Return answers(answer)
End Function
End Module
WebForm1.aspx
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
Dim random As New Random()
ViewState("count") = 0
ViewState("answer") = random.Next(50)
End If
End Sub
Protected Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
If Page.IsValid Then '★注目★「検証が妥当であればTrue、それ以外はFalseになる」
Dim result As Answer
ViewState("count") = ViewState("count") + 1
If ViewState("answer") = Me.TextBox1.Text Then
result = Answer.Correct
ElseIf ViewState("answer") > Me.TextBox1.Text Then
result = Answer.Bigger
Else
result = Answer.Less
End If
Me.Label1.Text = result.ToAnswer
End If
End Sub
Protected Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
Dim random As New Random()
ViewState("count") = 0
ViewState("answer") = random.Next(100)
End Sub
その他のValidation
RequiredFieldValidator/RangeValidator編
http://blogs.yahoo.co.jp/dk521123/25326361.html
RegularExpressionValidator編
http://blogs.yahoo.co.jp/dk521123/26142875.html
CustomValidator編
http://blogs.yahoo.co.jp/dk521123/26091356.html
あれこれ編
http://blogs.yahoo.co.jp/dk521123/26476406.html