none
Silverlight ValidatesOnException RRS feed

답변

  • 안녕하십니까? 김도남 님

    Microsoft MSDN Forum 사이트를 방문해 주셔서 감사합니다.

     

    문의 하신 “Silverlight ValidatesOnException”에 대한 답변을 드리겠습니다.

     

    Step 1 : Class

     

    ValidatesOnException 속성을 이용하기 위해 Property Set Method에 유효성 검사 로직을 작성을 합니다.

     

    public class User : INotifyPropertyChanged

    {

        #region Property

        private string _name = string.Empty;

     

        public string Name

        {

            get { return _name; }

            set

            {

                if (_name != value)

                {

                    _name = value;

                    

                    //필드 유효성 검사

                    if (string.IsNullOrEmpty(value))

                        throw new Exception("Please set a value");

     

                    RaisePropertyChanged("Name");

                }

            }

        }

     

        private bool _gender = false;

     

        public bool Gender

        {

            get { return _gender; }

            set

            {

                if (_gender != value)

                {

                    _gender = value;

                    RaisePropertyChanged("Gender");

                }

            }

        }

    }

     

     

     

    Step 2 : XAML

     

    Stack Panel DataContext User 인스턴스를 설정을 합니다. 이 하위 Element User Instance Member Binding에 사용할 수 있습니다.

     

    <StackPanel Orientation="Vertical">

        <StackPanel.DataContext>

            <local:User />

        </StackPanel.DataContext>

        <StackPanel Orientation="Horizontal">

            <TextBlock Text="Name : " />

            <TextBox Width="80" Height="30"

                     Text="{Binding Path=Name, Mode=TwoWay, ValidatesOnExceptions=True}"/>

        </StackPanel>

    </StackPanel>

     

     

    Step 3 : 확인

     

     

    text박스에 아무값도 입력하지 않았을 경우에 우측에 에러 메시지를 보여주는 팝업창이 표시됩니다.

     

                

    참고 자료

     

    Binding.ValidatesOnExceptions Property

    http://msdn.microsoft.com/en-us/library/system.windows.data.binding.validatesonexceptions.aspx

     

    제가 문제에 대해 더 알아야 할 것이 있다면 응답 주시면 감사하겠습니다.

    제시해 드린 답변이 도움이 되었기를 바랍니다.

    • 답변으로 표시됨 김도남 2011년 11월 8일 화요일 오전 5:09
    2011년 11월 7일 월요일 오전 9:25
    중재자