0

テキストボックスに正規表現を直接追加できる依存関係プロパティが追加されたテキストボックスがあり、正規表現が成功したか失敗したかによってテキストボックスが変更されます。( TextBox の入力制限を定義する方法は? Nathan Tornquist の投稿)

ここで、正規表現が失敗したかどうかに関係なく更新するプロパティを追加したいので、実際にはブール値です。

新しい情報をデータベースに追加する前に検証するときに、すべての新しい情報がそれぞれの正規表現に合格するようにします。

だから基本的に私はこれができるようになりたいです

if(txtPostalCode.passRegex=true) Then

これまでにクラスに追加しました

Public Shared ReadOnly PassRegexProperty As DependencyProperty = DependencyProperty.RegisterAttached("PassRegex", GetType(Boolean), GetType(ColorMasking), New PropertyMetadata(False))

    Public Shared Sub SetPassRegex(obj As DependencyObject, PassRegex As Boolean)
        obj.SetValue(PassRegexProperty, PassRegex)
    End Sub

    Public Shared Function GetPassRegex(obj As DependencyObject) As Boolean
        Return DirectCast(obj.GetValue(PassRegexProperty), Boolean)
    End Function

このプロパティは、コードの xaml ビットにある場合に表示されますが、モジュールなどにいる場合、この値にアクセスするにはどうすればよいですか?

多分私は正しい方法を使っていないと思いますが、私はグーグルでたくさん探していて、これで私を良い方向に向けるための良い答えを見つけることができないようです.

ヘルプや提案をいただければ幸いです。

4

1 に答える 1

1

GetValueコード ビハインドから、次のメソッドを使用して、拡張された TextBox コントロールのインスタンスからアクセスする必要があります。

bool passRegexValue = (bool)MyTextBox.GetValue(ColorMasking.PassRegexProperty);

(基になるDependencyObjectGetValue型に属します。)

于 2012-09-14T18:59:55.673 に答える