2

我是 WPF 的新手,现在我正在努力验证它。在我的 Validation 类的 validate 方法中,我需要将 TextBox1 的值与我的表单中包含的 TextBox2 的值进行比较。

在WPF中有什么办法吗?

4

1 回答 1

1

这个怎么样 - Xaml.cs 文件

    private string _Txt1;

            public string Txt1
            {
                get { return _Txt1; }
                set { _Txt1 = value;
                OnPropertyChanged("Txt1");
                }
            }

            private string _Txt2;

            public string Txt2
            {
                get { return _Txt2; }
                set
                {
                    _Txt2 = value;
                    OnPropertyChanged("Txt2");
                }
            }

     public event PropertyChangedEventHandler PropertyChanged;

            /// <summary>
            /// Called when [property changed].
            /// </summary>
            /// <param name="PropertyName">Name of the property.</param>
            private void OnPropertyChanged(string PropertyName)
            {
                if (PropertyChanged != null)
                {
                    PropertyChanged(this, new PropertyChangedEventArgs(PropertyName));
                }
            }

 private void textbox2_TextChanged(object sender, TextChangedEventArgs e)
        {
            Check();
        }

        private void textbox1_TextChanged(object sender, TextChangedEventArgs e)
        {
            Check();
        }

        public void Check()
        {
            if (Txt1 == Txt2)
            {
                MessageBox.Show("Values cant be same");
                Txt1 = "";
                Txt2 = "";
            }
        }

Xaml 文件-

<Grid>
        <TextBox Name="textbox1" Width="100" Height="20" TextChanged="textbox1_TextChanged" Text="{Binding Txt1,RelativeSource={RelativeSource AncestorType=Window},Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"/>
        <TextBox Name="textbox2" Width="100" Height="20" Margin="81,146,322,146" TextChanged="textbox2_TextChanged" Text="{Binding Txt2,RelativeSource={RelativeSource AncestorType=Window},Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"/>
    </Grid>
于 2013-08-06T12:49:53.820 回答