다음을 통해 공유


ErrorProvider.SetError 메서드

지정한 컨트롤의 오류를 설명하는 문자열을 설정합니다.

네임스페이스: System.Windows.Forms
어셈블리: System.Windows.Forms(system.windows.forms.dll)

구문

‘선언
Public Sub SetError ( _
    control As Control, _
    value As String _
)
‘사용 방법
Dim instance As ErrorProvider
Dim control As Control
Dim value As String

instance.SetError(control, value)
public void SetError (
    Control control,
    string value
)
public:
void SetError (
    Control^ control, 
    String^ value
)
public void SetError (
    Control control, 
    String value
)
public function SetError (
    control : Control, 
    value : String
)

매개 변수

  • control
    오류를 설명하는 문자열을 설정하는 해당 컨트롤입니다.
  • value
    오류 설명 문자열입니다.

예외

예외 형식 조건

ArgumentNullException

control이 Null 참조(Visual Basic의 경우 Nothing)인 경우

설명

문자열 길이가 0보다 크면 오류 아이콘이 표시되며, 오류를 설명하는 텍스트가 오류 아이콘에 대한 도구 설명으로 표시됩니다. 문자열 길이가 0이면 오류 아이콘이 숨겨집니다.

예제

다음 코드 예제에서는 ErrorProvider 클래스를 사용하여 사용자에게 데이터 입력 오류를 알리는 방법을 보여 줍니다. 다음 예제에서는 TextBox 컨트롤, NumericUpDown 컨트롤, ComboBox 컨트롤, 내용에 대한 각 유효성 검사 및 각 컨트롤에 대한 ErrorProvider가 포함된 Form을 만듭니다. 다음 예제에서는 BlinkRateBlinkStyle 속성과 SetIconAlignmentSetIconPadding 메서드를 사용하여 오류 아이콘 옵션을 설정합니다. SetError 메서드는 컨트롤의 내용에 따라 컨트롤의 Validated 이벤트가 발생하는 동안 적절한 오류 텍스트를 포함하거나 포함하지 않은 상태로 호출됩니다.

Imports System
Imports System.Drawing
Imports System.Windows.Forms

Namespace ErrorProvider

    Public NotInheritable Class Form1
        Inherits System.Windows.Forms.Form
    
        Private label1 As System.Windows.Forms.Label
        Private label2 As System.Windows.Forms.Label
        Private label3 As System.Windows.Forms.Label      
        Private label4 As System.Windows.Forms.Label
        Private label5 As System.Windows.Forms.Label
        Private label6 As System.Windows.Forms.Label
        Friend WithEvents favoriteColorComboBox As System.Windows.Forms.ComboBox 
        Friend WithEvents nameTextBox1 As System.Windows.Forms.TextBox 
        Friend WithEvents ageUpDownPicker As System.Windows.Forms.NumericUpDown      
        Private ageErrorProvider As System.Windows.Forms.ErrorProvider 
        Private nameErrorProvider As System.Windows.Forms.ErrorProvider 
        Private favoriteColorErrorProvider As System.Windows.Forms.ErrorProvider
        
        <System.STAThread()>  _
        Public Shared Sub Main()
            System.Windows.Forms.Application.Run(New Form1())
        End Sub 'Main

        Public Sub New()
            
            Me.nameTextBox1 = New System.Windows.Forms.TextBox()
            Me.label1 = New System.Windows.Forms.Label()
            Me.label2 = New System.Windows.Forms.Label()
            Me.ageUpDownPicker = New System.Windows.Forms.NumericUpDown()
            Me.favoriteColorComboBox = New System.Windows.Forms.ComboBox()
            Me.label3 = New System.Windows.Forms.Label()
            Me.label4 = New System.Windows.Forms.Label()
            Me.label5 = New System.Windows.Forms.Label()
            Me.label6 = New System.Windows.Forms.Label()

            ' Name Label
            Me.label1.Location = New System.Drawing.Point(56, 32)
            Me.label1.Size = New System.Drawing.Size(40, 23)
            Me.label1.Text = "Name:"

            ' Age Label
            Me.label2.Location = New System.Drawing.Point(40, 64)
            Me.label2.Size = New System.Drawing.Size(56, 23)
            Me.label2.Text = "Age (3-5)"

            ' Favorite Color Label
            Me.label3.Location = New System.Drawing.Point(24, 96)
            Me.label3.Size = New System.Drawing.Size(80, 24)
            Me.label3.Text = "Favorite color"

            ' ErrorBlinkStyle.AlwaysBlink Label
            Me.label4.Location = New System.Drawing.Point(264, 32)
            Me.label4.Size = New System.Drawing.Size(160, 23)
            Me.label4.Text = "ErrorBlinkStyle.AlwaysBlink"

            ' ErrorBlinkStyle.BlinkIfDifferentError Label
            Me.label5.Location = New System.Drawing.Point(264, 64)
            Me.label5.Size = New System.Drawing.Size(200, 23)
            Me.label5.Text = "ErrorBlinkStyle.BlinkIfDifferentError"

            ' ErrorBlinkStyle.NeverBlink Label
            Me.label6.Location = New System.Drawing.Point(264, 96)
            Me.label6.Size = New System.Drawing.Size(200, 23)
            Me.label6.Text = "ErrorBlinkStyle.NeverBlink"

            ' Name TextBox
            Me.nameTextBox1.Location = New System.Drawing.Point(112, 32)
            Me.nameTextBox1.Size = New System.Drawing.Size(120, 20)
            Me.nameTextBox1.TabIndex = 0

            ' Age NumericUpDown
            Me.ageUpDownPicker.Location = New System.Drawing.Point(112, 64)
            Me.ageUpDownPicker.Maximum = New System.Decimal(New Integer() {150, 0, 0, 0})
            Me.ageUpDownPicker.TabIndex = 4

            ' Favorite Color ComboBox
            Me.favoriteColorComboBox.Items.AddRange(New Object() {"None", "Red", "Yellow", _
                                                                                    "Green", "Blue", "Purple"})
            Me.favoriteColorComboBox.Location = New System.Drawing.Point(112, 96)
            Me.favoriteColorComboBox.Size = New System.Drawing.Size(120, 21)
            Me.favoriteColorComboBox.TabIndex = 5

            ' Set up how the form should be displayed and add the controls to the form.
            Me.ClientSize = New System.Drawing.Size(464, 150)
            Me.Controls.AddRange(New System.Windows.Forms.Control() {Me.label6, Me.label5, Me.label4, _
                                          Me.label3, Me.favoriteColorComboBox, Me.ageUpDownPicker, Me.label2, _
                                          Me.label1, Me.nameTextBox1})

            Me.Text = "Error Provider Example"

            ' Create and set the ErrorProvider for each data entry control.
     
            nameErrorProvider = New System.Windows.Forms.ErrorProvider()
            nameErrorProvider.SetIconAlignment(Me.nameTextBox1, ErrorIconAlignment.MiddleRight)
            nameErrorProvider.SetIconPadding(Me.nameTextBox1, 2)
            nameErrorProvider.BlinkRate = 1000
            nameErrorProvider.BlinkStyle = System.Windows.Forms.ErrorBlinkStyle.AlwaysBlink
            
            ageErrorProvider = New System.Windows.Forms.ErrorProvider()
            ageErrorProvider.SetIconAlignment(Me.ageUpDownPicker, ErrorIconAlignment.MiddleRight)
            ageErrorProvider.SetIconPadding(Me.ageUpDownPicker, 2)
            ageErrorProvider.BlinkStyle = System.Windows.Forms.ErrorBlinkStyle.BlinkIfDifferentError
            
            favoriteColorErrorProvider = New System.Windows.Forms.ErrorProvider()
            favoriteColorErrorProvider.SetIconAlignment(Me.favoriteColorComboBox, ErrorIconAlignment.MiddleRight)
            favoriteColorErrorProvider.SetIconPadding(Me.favoriteColorComboBox, 2)
            favoriteColorErrorProvider.BlinkRate = 1000
            favoriteColorErrorProvider.BlinkStyle = System.Windows.Forms.ErrorBlinkStyle.NeverBlink
        End Sub 'New
 
        Private Sub nameTextBox1_Validated(sender As Object, e As System.EventArgs) Handles nameTextBox1.Validated
            If IsNameValid() Then
                ' Clear the error, if any, in the error provider.
                nameErrorProvider.SetError(Me.nameTextBox1, "")
            Else
                ' Set the error if the name is not valid.
                nameErrorProvider.SetError(Me.nameTextBox1, "Name is required.")
            End If 
        End Sub 
              
        Private Sub ageUpDownPicker_Validated(sender As Object, e As System.EventArgs) Handles ageUpDownPicker.Validated
            If IsAgeTooYoung() Then
                ' Set the error if the age is too young.
                ageErrorProvider.SetError(Me.ageUpDownPicker, "Age not old enough")
            ElseIf IsAgeTooOld() Then
                ' Set the error if the age is too old.
                ageErrorProvider.SetError(Me.ageUpDownPicker, "Age is too old")
            Else
                ' Clear the error, if any, in the error provider.
                ageErrorProvider.SetError(Me.ageUpDownPicker, "")
            End If
        End Sub
         
        Private Sub favoriteColorComboBox_Validated(sender As Object, e As System.EventArgs) Handles favoriteColorComboBox.Validated
            If Not IsColorValid() Then
                ' Set the error if the favorite color is not valid.
                favoriteColorErrorProvider.SetError(Me.favoriteColorComboBox, "Must select a color.")            
            Else
                ' Clear the error, if any, in the error provider.
                favoriteColorErrorProvider.SetError(Me.favoriteColorComboBox, "")
            End If
        End Sub 

        ' Functions to verify data.
        Private Function IsNameValid() As Boolean
            ' Determine whether the text box contains a zero-length string.
            Return nameTextBox1.Text.Length > 0
        End Function 

        Private Function IsAgeTooYoung() As Boolean
            ' Determine whether the age value is less than three.
            Return ageUpDownPicker.Value < 3
        End Function 
        
        
        Private Function IsAgeTooOld() As Boolean
            ' Determine whether the age value is greater than five.
            Return ageUpDownPicker.Value > 5
        End Function 
                
        Private Function IsColorValid() As Boolean
            ' Determine whether the favorite color has a valid value.
            If Not (favoriteColorComboBox.SelectedItem Is Nothing) Then
                    If Not(favoriteColorComboBox.SelectedItem.ToString().Equals("None")) Then
                        Return true 
                    End If
            End If
            Return false
        End Function 

    End Class 'Form1
End Namespace 'ErrorProvider 
using System;
using System.Drawing;
using System.Windows.Forms;

namespace ErrorProvider
{
    public class Form1 : System.Windows.Forms.Form
    {
        private System.Windows.Forms.Label label1;
        private System.Windows.Forms.Label label2;
        private System.Windows.Forms.Label label4;
        private System.Windows.Forms.Label label5;
        private System.Windows.Forms.Label label6;
        private System.Windows.Forms.Label label3;
        private System.Windows.Forms.TextBox nameTextBox1;
        private System.Windows.Forms.NumericUpDown ageUpDownPicker;
        private System.Windows.Forms.ComboBox favoriteColorComboBox;
        private System.Windows.Forms.ErrorProvider ageErrorProvider;
        private System.Windows.Forms.ErrorProvider nameErrorProvider;
        private System.Windows.Forms.ErrorProvider favoriteColorErrorProvider;

        [STAThread]
        static void Main() 
        {
            Application.Run(new Form1());
        }

        public Form1()
        {
            this.nameTextBox1 = new System.Windows.Forms.TextBox();
            this.label1 = new System.Windows.Forms.Label();
            this.label2 = new System.Windows.Forms.Label();
            this.ageUpDownPicker = new System.Windows.Forms.NumericUpDown();
            this.favoriteColorComboBox = new System.Windows.Forms.ComboBox();
            this.label3 = new System.Windows.Forms.Label();
            this.label4 = new System.Windows.Forms.Label();
            this.label5 = new System.Windows.Forms.Label();
            this.label6 = new System.Windows.Forms.Label();

            // Name Label
            this.label1.Location = new System.Drawing.Point(56, 32);
            this.label1.Size = new System.Drawing.Size(40, 23);
            this.label1.Text = "Name:";

            // Age Label
            this.label2.Location = new System.Drawing.Point(40, 64);
            this.label2.Size = new System.Drawing.Size(56, 23);
            this.label2.Text = "Age (3-5)";           

            // Favorite Color Label
            this.label3.Location = new System.Drawing.Point(24, 96);
            this.label3.Size = new System.Drawing.Size(80, 24);
            this.label3.Text = "Favorite color";

            // ErrorBlinkStyle.AlwaysBlink Label
            this.label4.Location = new System.Drawing.Point(264, 32);
            this.label4.Size = new System.Drawing.Size(160, 23);
            this.label4.Text = "ErrorBlinkStyle.AlwaysBlink";

            // ErrorBlinkStyle.BlinkIfDifferentError Label
            this.label5.Location = new System.Drawing.Point(264, 64);
            this.label5.Size = new System.Drawing.Size(200, 23);
            this.label5.Text = "ErrorBlinkStyle.BlinkIfDifferentError";

            // ErrorBlinkStyle.NeverBlink Label
            this.label6.Location = new System.Drawing.Point(264, 96);
            this.label6.Size = new System.Drawing.Size(200, 23);
            this.label6.Text = "ErrorBlinkStyle.NeverBlink";

            // Name TextBox
            this.nameTextBox1.Location = new System.Drawing.Point(112, 32);
            this.nameTextBox1.Size = new System.Drawing.Size(120, 20);
            this.nameTextBox1.TabIndex = 0;
            this.nameTextBox1.Validated += new System.EventHandler(this.nameTextBox1_Validated);

            // Age NumericUpDown
            this.ageUpDownPicker.Location = new System.Drawing.Point(112, 64);
            this.ageUpDownPicker.Maximum = new System.Decimal(new int[] {150,0,0,0});
            this.ageUpDownPicker.TabIndex = 4;
            this.ageUpDownPicker.Validated += new System.EventHandler(this.ageUpDownPicker_Validated);

            // Favorite Color ComboBox
            this.favoriteColorComboBox.Items.AddRange(new object[] {"None","Red","Yellow",
                                                                    "Green","Blue","Purple"});
            this.favoriteColorComboBox.Location = new System.Drawing.Point(112, 96);
            this.favoriteColorComboBox.Size = new System.Drawing.Size(120, 21);
            this.favoriteColorComboBox.TabIndex = 5;
            this.favoriteColorComboBox.Validated += new System.EventHandler(this.favoriteColorComboBox_Validated);

            // Set up how the form should be displayed and add the controls to the form.
            this.ClientSize = new System.Drawing.Size(464, 150);
            this.Controls.AddRange(new System.Windows.Forms.Control[] {
                                        this.label6,this.label5,this.label4,this.label3,
                                        this.favoriteColorComboBox,this.ageUpDownPicker,
                                        this.label2,this.label1,this.nameTextBox1});
            this.Text = "Error Provider Example";

            // Create and set the ErrorProvider for each data entry control.

            nameErrorProvider = new  System.Windows.Forms.ErrorProvider();
            nameErrorProvider.SetIconAlignment (this.nameTextBox1, ErrorIconAlignment.MiddleRight);
            nameErrorProvider.SetIconPadding (this.nameTextBox1, 2);
            nameErrorProvider.BlinkRate = 1000;
            nameErrorProvider.BlinkStyle = System.Windows.Forms.ErrorBlinkStyle.AlwaysBlink;

            ageErrorProvider = new  System.Windows.Forms.ErrorProvider();
            ageErrorProvider.SetIconAlignment (this.ageUpDownPicker, ErrorIconAlignment.MiddleRight);
            ageErrorProvider.SetIconPadding (this.ageUpDownPicker, 2);
            ageErrorProvider.BlinkStyle = System.Windows.Forms.ErrorBlinkStyle.BlinkIfDifferentError;

            favoriteColorErrorProvider = new  System.Windows.Forms.ErrorProvider();
            favoriteColorErrorProvider.SetIconAlignment (this.favoriteColorComboBox, ErrorIconAlignment.MiddleRight);
            favoriteColorErrorProvider.SetIconPadding (this.favoriteColorComboBox, 2);
            favoriteColorErrorProvider.BlinkRate = 1000;
            favoriteColorErrorProvider.BlinkStyle = System.Windows.Forms.ErrorBlinkStyle.NeverBlink;
        }
    
        private void nameTextBox1_Validated(object sender, System.EventArgs e)
        {
            if(IsNameValid())
            {
                // Clear the error, if any, in the error provider.
                nameErrorProvider.SetError(this.nameTextBox1, "");
            }
            else
            {
                // Set the error if the name is not valid.
                nameErrorProvider.SetError(this.nameTextBox1, "Name is required.");
            }
        }

        private void ageUpDownPicker_Validated(object sender, System.EventArgs e)
        {
            if (IsAgeTooYoung())
            {
                // Set the error if the age is too young.
                ageErrorProvider.SetError(this.ageUpDownPicker, "Age not old enough");
            }
            else if (IsAgeTooOld())
            {
                // Set the error if the age is too old.
                ageErrorProvider.SetError(this.ageUpDownPicker, "Age is too old");
            }
            else 
            {
                // Clear the error, if any, in the error provider.
                ageErrorProvider.SetError(this.ageUpDownPicker, "");
            }
        }

        private void favoriteColorComboBox_Validated(object sender, System.EventArgs e) 
        {
            if (!IsColorValid())
            {
                // Set the error if the favorite color is not valid.
                favoriteColorErrorProvider.SetError(this.favoriteColorComboBox, "Must select a color.");
            }
            else
            {
                // Clear the error, if any, in the error provider.
                favoriteColorErrorProvider.SetError(this.favoriteColorComboBox, "");
            }
        }

        // Functions to verify data.
        private bool IsNameValid() 
        {
            // Determine whether the text box contains a zero-length string.
            return (nameTextBox1.Text.Length > 0);
        }

        private bool IsAgeTooYoung() 
        {
            // Determine whether the age value is less than three.
            return (ageUpDownPicker.Value < 3);
        }

        private bool IsAgeTooOld() 
        {
            // Determine whether the age value is greater than five.
            return (ageUpDownPicker.Value > 5 );
        }

        private bool IsColorValid() 
        {
            // Determine whether the favorite color has a valid value.
            return ((favoriteColorComboBox.SelectedItem != null) &&
                (!favoriteColorComboBox.SelectedItem.ToString().Equals("None")));
        }
    }
}
#using <System.dll>
#using <System.Windows.Forms.dll>
#using <System.Drawing.dll>

using namespace System;
using namespace System::Drawing;
using namespace System::Windows::Forms;
public ref class Form1: public System::Windows::Forms::Form
{
private:
   System::Windows::Forms::Label ^ label1;
   System::Windows::Forms::Label ^ label2;
   System::Windows::Forms::Label ^ label4;
   System::Windows::Forms::Label ^ label5;
   System::Windows::Forms::Label ^ label6;
   System::Windows::Forms::Label ^ label3;
   System::Windows::Forms::TextBox^ nameTextBox1;
   System::Windows::Forms::NumericUpDown^ ageUpDownPicker;
   System::Windows::Forms::ComboBox^ favoriteColorComboBox;
   System::Windows::Forms::ErrorProvider^ ageErrorProvider;
   System::Windows::Forms::ErrorProvider^ nameErrorProvider;
   System::Windows::Forms::ErrorProvider^ favoriteColorErrorProvider;

public:
   Form1()
   {
      this->nameTextBox1 = gcnew System::Windows::Forms::TextBox;
      this->label1 = gcnew System::Windows::Forms::Label;
      this->label2 = gcnew System::Windows::Forms::Label;
      this->ageUpDownPicker = gcnew System::Windows::Forms::NumericUpDown;
      this->favoriteColorComboBox = gcnew System::Windows::Forms::ComboBox;
      this->label3 = gcnew System::Windows::Forms::Label;
      this->label4 = gcnew System::Windows::Forms::Label;
      this->label5 = gcnew System::Windows::Forms::Label;
      this->label6 = gcnew System::Windows::Forms::Label;
      
      // Name Label
      this->label1->Location = System::Drawing::Point( 56, 32 );
      this->label1->Size = System::Drawing::Size( 40, 23 );
      this->label1->Text = "Name:";
      
      // Age Label
      this->label2->Location = System::Drawing::Point( 40, 64 );
      this->label2->Size = System::Drawing::Size( 56, 23 );
      this->label2->Text = "Age (3-5)";
      
      // Favorite Color Label
      this->label3->Location = System::Drawing::Point( 24, 96 );
      this->label3->Size = System::Drawing::Size( 80, 24 );
      this->label3->Text = "Favorite color";
      
      // ErrorBlinkStyle::AlwaysBlink Label
      this->label4->Location = System::Drawing::Point( 264, 32 );
      this->label4->Size = System::Drawing::Size( 160, 23 );
      this->label4->Text = "ErrorBlinkStyle::AlwaysBlink";
      
      // ErrorBlinkStyle::BlinkIfDifferentError Label
      this->label5->Location = System::Drawing::Point( 264, 64 );
      this->label5->Size = System::Drawing::Size( 200, 23 );
      this->label5->Text = "ErrorBlinkStyle::BlinkIfDifferentError";
      
      // ErrorBlinkStyle::NeverBlink Label
      this->label6->Location = System::Drawing::Point( 264, 96 );
      this->label6->Size = System::Drawing::Size( 200, 23 );
      this->label6->Text = "ErrorBlinkStyle::NeverBlink";
      
      // Name TextBox
      this->nameTextBox1->Location = System::Drawing::Point( 112, 32 );
      this->nameTextBox1->Size = System::Drawing::Size( 120, 20 );
      this->nameTextBox1->TabIndex = 0;
      this->nameTextBox1->Validated += gcnew System::EventHandler( this, &Form1::nameTextBox1_Validated );
      
      // Age NumericUpDown
      this->ageUpDownPicker->Location = System::Drawing::Point( 112, 64 );
      array<int>^temp0 = {150,0,0,0};
      this->ageUpDownPicker->Maximum = System::Decimal( temp0 );
      this->ageUpDownPicker->TabIndex = 4;
      this->ageUpDownPicker->Validated += gcnew System::EventHandler( this, &Form1::ageUpDownPicker_Validated );
      
      // Favorite Color ComboBox
      array<Object^>^temp1 = {"None","Red","Yellow","Green","Blue","Purple"};
      this->favoriteColorComboBox->Items->AddRange( temp1 );
      this->favoriteColorComboBox->Location = System::Drawing::Point( 112, 96 );
      this->favoriteColorComboBox->Size = System::Drawing::Size( 120, 21 );
      this->favoriteColorComboBox->TabIndex = 5;
      this->favoriteColorComboBox->Validated += gcnew System::EventHandler( this, &Form1::favoriteColorComboBox_Validated );
      
      // Set up how the form should be displayed and add the controls to the form.
      this->ClientSize = System::Drawing::Size( 464, 150 );
      array<System::Windows::Forms::Control^>^temp2 = {this->label6,this->label5,this->label4,this->label3,this->favoriteColorComboBox,this->ageUpDownPicker,this->label2,this->label1,this->nameTextBox1};
      this->Controls->AddRange( temp2 );
      this->Text = "Error Provider Example";
      
      // Create and set the ErrorProvider for each data entry control.
      nameErrorProvider = gcnew System::Windows::Forms::ErrorProvider;
      nameErrorProvider->SetIconAlignment( this->nameTextBox1, ErrorIconAlignment::MiddleRight );
      nameErrorProvider->SetIconPadding( this->nameTextBox1, 2 );
      nameErrorProvider->BlinkRate = 1000;
      nameErrorProvider->BlinkStyle = System::Windows::Forms::ErrorBlinkStyle::AlwaysBlink;
      ageErrorProvider = gcnew System::Windows::Forms::ErrorProvider;
      ageErrorProvider->SetIconAlignment( this->ageUpDownPicker, ErrorIconAlignment::MiddleRight );
      ageErrorProvider->SetIconPadding( this->ageUpDownPicker, 2 );
      ageErrorProvider->BlinkStyle = System::Windows::Forms::ErrorBlinkStyle::BlinkIfDifferentError;
      favoriteColorErrorProvider = gcnew System::Windows::Forms::ErrorProvider;
      favoriteColorErrorProvider->SetIconAlignment( this->favoriteColorComboBox, ErrorIconAlignment::MiddleRight );
      favoriteColorErrorProvider->SetIconPadding( this->favoriteColorComboBox, 2 );
      favoriteColorErrorProvider->BlinkRate = 1000;
      favoriteColorErrorProvider->BlinkStyle = System::Windows::Forms::ErrorBlinkStyle::NeverBlink;
   }


private:

   void nameTextBox1_Validated( Object^ /*sender*/, System::EventArgs^ /*e*/ )
   {
      if ( IsNameValid() )
      {
         
         // Clear the error, if any, in the error provider.
         nameErrorProvider->SetError( this->nameTextBox1, "" );
      }
      else
      {
         
         // Set the error if the name is not valid.
         nameErrorProvider->SetError( this->nameTextBox1, "Name is required." );
      }
   }

   void ageUpDownPicker_Validated( Object^ /*sender*/, System::EventArgs^ /*e*/ )
   {
      if ( IsAgeTooYoung() )
      {
         
         // Set the error if the age is too young.
         ageErrorProvider->SetError( this->ageUpDownPicker, "Age not old enough" );
      }
      else
      if ( IsAgeTooOld() )
      {
         
         // Set the error if the age is too old.
         ageErrorProvider->SetError( this->ageUpDownPicker, "Age is too old" );
      }
      else
      {
         
         // Clear the error, if any, in the error provider.
         ageErrorProvider->SetError( this->ageUpDownPicker, "" );
      }
   }

   void favoriteColorComboBox_Validated( Object^ /*sender*/, System::EventArgs^ /*e*/ )
   {
      if (  !IsColorValid() )
      {
         
         // Set the error if the favorite color is not valid.
         favoriteColorErrorProvider->SetError( this->favoriteColorComboBox, "Must select a color." );
      }
      else
      {
         
         // Clear the error, if any, in the error provider.
         favoriteColorErrorProvider->SetError( this->favoriteColorComboBox, "" );
      }
   }


   // Functions to verify data.
   bool IsNameValid()
   {
      
      // Determine whether the text box contains a zero-length String*.
      return (nameTextBox1->Text->Length > 0);
   }

   bool IsAgeTooYoung()
   {
      
      // Determine whether the age value is less than three.
      return (ageUpDownPicker->Value < 3);
   }

   bool IsAgeTooOld()
   {
      
      // Determine whether the age value is greater than five.
      return (ageUpDownPicker->Value > 5);
   }

   bool IsColorValid()
   {
      
      // Determine whether the favorite color has a valid value.
      return ((favoriteColorComboBox->SelectedItem != 0) && ( !favoriteColorComboBox->SelectedItem->Equals( "None" )));
   }

};


[STAThread]
int main()
{
   Application::Run( gcnew Form1 );
}
package ErrorProvider;

import System.*;
import System.Drawing.*;
import System.Windows.Forms.*;

public class Form1 extends System.Windows.Forms.Form
{
    private System.Windows.Forms.Label label1;
    private System.Windows.Forms.Label label2;
    private System.Windows.Forms.Label label4;
    private System.Windows.Forms.Label label5;
    private System.Windows.Forms.Label label6;
    private System.Windows.Forms.Label label3;
    private System.Windows.Forms.TextBox nameTextBox1;
    private System.Windows.Forms.NumericUpDown ageUpDownPicker;
    private System.Windows.Forms.ComboBox favoriteColorComboBox;
    private System.Windows.Forms.ErrorProvider ageErrorProvider;
    private System.Windows.Forms.ErrorProvider nameErrorProvider;
    private System.Windows.Forms.ErrorProvider favoriteColorErrorProvider;

    /** @attribute STAThread()
     */
    public static void main(String[] args)
    {
        Application.Run(new Form1());
    } //main

    public Form1()
    {
        this.nameTextBox1 = new System.Windows.Forms.TextBox();
        this.label1 = new System.Windows.Forms.Label();
        this.label2 = new System.Windows.Forms.Label();
        this.ageUpDownPicker = new System.Windows.Forms.NumericUpDown();
        this.favoriteColorComboBox = new System.Windows.Forms.ComboBox();
        this.label3 = new System.Windows.Forms.Label();
        this.label4 = new System.Windows.Forms.Label();
        this.label5 = new System.Windows.Forms.Label();
        this.label6 = new System.Windows.Forms.Label();
        // Name Label
        this.label1.set_Location(new System.Drawing.Point(56, 32));
        this.label1.set_Size(new System.Drawing.Size(40, 23));
        this.label1.set_Text("Name:");
        // Age Label
        this.label2.set_Location(new System.Drawing.Point(40, 64));
        this.label2.set_Size(new System.Drawing.Size(56, 23));
        this.label2.set_Text("Age (3-5)");
        // Favorite Color Label
        this.label3.set_Location(new System.Drawing.Point(24, 96));
        this.label3.set_Size(new System.Drawing.Size(80, 24));
        this.label3.set_Text("Favorite color");
        // ErrorBlinkStyle.AlwaysBlink Label
        this.label4.set_Location(new System.Drawing.Point(264, 32));
        this.label4.set_Size(new System.Drawing.Size(160, 23));
        this.label4.set_Text("ErrorBlinkStyle.AlwaysBlink");
        // ErrorBlinkStyle.BlinkIfDifferentError Label
        this.label5.set_Location(new System.Drawing.Point(264, 64));
        this.label5.set_Size(new System.Drawing.Size(200, 23));
        this.label5.set_Text("ErrorBlinkStyle.BlinkIfDifferentError");
        // ErrorBlinkStyle.NeverBlink Label
        this.label6.set_Location(new System.Drawing.Point(264, 96));
        this.label6.set_Size(new System.Drawing.Size(200, 23));
        this.label6.set_Text("ErrorBlinkStyle.NeverBlink");
        // Name TextBox
        this.nameTextBox1.set_Location(new System.Drawing.Point(112, 32));
        this.nameTextBox1.set_Size(new System.Drawing.Size(120, 20));
        this.nameTextBox1.set_TabIndex(0);
        this.nameTextBox1.add_Validated(new System.EventHandler(
            this.nameTextBox1_Validated));
        // Age NumericUpDown
        this.ageUpDownPicker.set_Location(new System.Drawing.Point(112, 64));
        this.ageUpDownPicker.set_Maximum(new System.Decimal(new int[] {
            150, 0, 0, 0 }));
        this.ageUpDownPicker.set_TabIndex(4);
        this.ageUpDownPicker.add_Validated(new System.EventHandler(
            this.ageUpDownPicker_Validated));
        // Favorite Color ComboBox
        this.favoriteColorComboBox.get_Items().AddRange(new Object[] { 
            "None", "Red", "Yellow", "Green", "Blue", "Purple" });
        this.favoriteColorComboBox.set_Location(
            new System.Drawing.Point(112, 96));
        this.favoriteColorComboBox.set_Size(new System.Drawing.Size(120, 21));
        this.favoriteColorComboBox.set_TabIndex(5);
        this.favoriteColorComboBox.add_Validated(new System.EventHandler(
            this.favoriteColorComboBox_Validated));
        // Set up how the form should be displayed and add the controls to 
        // the form.
        this.set_ClientSize(new System.Drawing.Size(464, 150));
        this.get_Controls().AddRange(new System.Windows.Forms.Control[] { 
            this.label6, this.label5, this.label4, this.label3, 
            this.favoriteColorComboBox, this.ageUpDownPicker, this.label2, 
            this.label1, this.nameTextBox1 });
        this.set_Text("Error Provider Example");
        // Create and set the ErrorProvider for each data entry control.
        nameErrorProvider = new System.Windows.Forms.ErrorProvider();
        nameErrorProvider.SetIconAlignment(this.nameTextBox1, 
            ErrorIconAlignment.MiddleRight);
        nameErrorProvider.SetIconPadding(this.nameTextBox1, 2);
        nameErrorProvider.set_BlinkRate(1000);
        nameErrorProvider.set_BlinkStyle(
            System.Windows.Forms.ErrorBlinkStyle.AlwaysBlink);
        nameErrorProvider.set_ContainerControl(this);

        ageErrorProvider = new System.Windows.Forms.ErrorProvider();
        ageErrorProvider.SetIconAlignment(this.ageUpDownPicker, 
            ErrorIconAlignment.MiddleRight);
        ageErrorProvider.SetIconPadding(this.ageUpDownPicker, 2);
        ageErrorProvider.set_BlinkStyle(
            System.Windows.Forms.ErrorBlinkStyle.BlinkIfDifferentError);
        ageErrorProvider.set_ContainerControl(this);

        favoriteColorErrorProvider = new System.Windows.Forms.ErrorProvider();
        favoriteColorErrorProvider.SetIconAlignment(this.favoriteColorComboBox, 
            ErrorIconAlignment.MiddleRight);
        favoriteColorErrorProvider.SetIconPadding(this.favoriteColorComboBox, 2);
        favoriteColorErrorProvider.set_BlinkRate(1000);
        favoriteColorErrorProvider.set_BlinkStyle(
            System.Windows.Forms.ErrorBlinkStyle.NeverBlink);
        favoriteColorErrorProvider.set_ContainerControl(this);
    } //Form1
    
    private void nameTextBox1_Validated(Object sender, System.EventArgs e)
    {
        if (IsNameValid()) {
            // Clear the error, if any, in the error provider.
            nameErrorProvider.SetError(this.nameTextBox1, "");
        }
        else {
            // Set the error if the name is not valid.
            nameErrorProvider.SetError(this.nameTextBox1, "Name is required.");
        }
    } //nameTextBox1_Validated

    private void ageUpDownPicker_Validated(Object sender, System.EventArgs e)
    {
        if (IsAgeTooYoung()) {
            // Set the error if the age is too young.
            ageErrorProvider.SetError(this.ageUpDownPicker, 
                "Age not old enough");
        }
        else {
            if (IsAgeTooOld()) {
                // Set the error if the age is too old.
                ageErrorProvider.SetError(this.ageUpDownPicker, 
                    "Age is too old");
            }
            else {
                // Clear the error, if any, in the error provider.
                ageErrorProvider.SetError(this.ageUpDownPicker, "");
            }
        }
    } //ageUpDownPicker_Validated

    private void favoriteColorComboBox_Validated(Object sender, 
        System.EventArgs e)
    {
        if (!(IsColorValid())) {
            // Set the error if the favorite color is not valid.
            favoriteColorErrorProvider.SetError(this.favoriteColorComboBox, 
                "Must select a color.");
        }
        else {
            // Clear the error, if any, in the error provider.
            favoriteColorErrorProvider.SetError(
                this.favoriteColorComboBox, "");
        }
    } //favoriteColorComboBox_Validated

    // Functions to verify data.
    private boolean IsNameValid()
    {
        // Determine whether the text box contains a zero-length string.
        return ((nameTextBox1.get_Text().get_Length()) > 0);
    } //IsNameValid

    private boolean IsAgeTooYoung()
    {
        // Determine whether the age value is less than three.
        return (System.Convert.ToInt32(ageUpDownPicker.get_Value()) < 3);
    } //IsAgeTooYoung

    private boolean IsAgeTooOld()
    {
        // Determine whether the age value is greater than five.
        return (System.Convert.ToInt32(ageUpDownPicker.get_Value()) > 5);
    } //IsAgeTooOld

    private boolean IsColorValid()
    {
        // Determine whether the favorite color has a valid value.
        return (favoriteColorComboBox.get_SelectedItem() != null) 
            && (!(favoriteColorComboBox.get_SelectedItem().
            ToString().Equals("None")));
    } //IsColorValid
} //Form1

플랫폼

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework에서 모든 플래폼의 모든 버전을 지원하지는 않습니다. 지원되는 버전의 목록은 시스템 요구 사항을 참조하십시오.

버전 정보

.NET Framework

2.0, 1.1, 1.0에서 지원

참고 항목

참조

ErrorProvider 클래스
ErrorProvider 멤버
System.Windows.Forms 네임스페이스
GetError