0

テキストボックスを作成します。フォーカスされると強調表示されます。ユーザーはTextBoxにテキストを入力し、コードはユーザーが入力した内容をテストします。入力データが正しくない場合は、このTextBoxをBlurEffect(XAMLで表示)で処理する必要があります。

<Setter Property="Effect">
      <Setter.Value>
      <BlurEffect Opacity="1" Color="Red" BlurRadius="30"/>
 </Setter.Value>

このコードは、入力データが正しくない場合にキャッチします。

    private void Filter_textBox_KeyUp(object sender, KeyEventArgs e)
    {
        string str=Filter_textBox.Text;
        if (str == "bbb")
        {
            Filter_textBox.BitmapEffect = null;
            Filter_textBox.Foreground = Brushes.Black;
        }
        else
             //<BlurEffect Opacity="1" Color="Red" BlurRadius="30"/>

そして、「else」の場合は「BlutEffect」をトリガーしたい。どうやってするの?それは本当ですか?

4

1 に答える 1

1
    private void Filter_textBox_KeyUp(object sender, KeyEventArgs e)
    {
        string str = Filter_textBox.Text;
        if (str == "bbb")
        {
            Filter_textBox.Effect = null;
            Filter_textBox.Foreground = Brushes.Black;
        }
        else
        {
            DropShadowEffect effect = new DropShadowEffect();
            effect.Opacity = 1;
            effect.Color = Colors.Red;
            effect.BlurRadius = 30;
            Filter_textBox.Effect = effect;
        }
    }

これはまさにあなたがやろうとしていることをします。しかし、これは良い習慣ではありません。を使用しても同じ結果を得ることができますDataTrigger

于 2012-11-10T10:28:03.393 に答える