Css 更改flex验证错误的默认颜色

Css 更改flex验证错误的默认颜色,css,apache-flex,actionscript-3,validation,Css,Apache Flex,Actionscript 3,Validation,我看到的示例似乎显示了如何更改用户实际悬停在textinput字段上时显示的颜色 但是,当验证失败时,通用textInput边框上会有一条红线。我的CSS文件使用边框皮肤作为文本输入,所以我看不到这一行 我希望有一种方法可以在验证失败时突出显示文本框,或者重新启用红线功能。我不想摆脱我的CSS,因为它会彻底破坏我的配色方案,但任何允许错误线显示的调整都将非常感激 这是CSS: TextInput, TextArea { border-skin: Embed(source='/../ass

我看到的示例似乎显示了如何更改用户实际悬停在textinput字段上时显示的颜色

但是,当验证失败时,通用textInput边框上会有一条红线。我的CSS文件使用边框皮肤作为文本输入,所以我看不到这一行

我希望有一种方法可以在验证失败时突出显示文本框,或者重新启用红线功能。我不想摆脱我的CSS,因为它会彻底破坏我的配色方案,但任何允许错误线显示的调整都将非常感激

这是CSS:

TextInput, TextArea
{
    border-skin: Embed(source='/../assets/images/input_bg.png', scaleGridLeft=8, scaleGridRight=20, scaleGridTop=8,scaleGridBottom=9);
    padding-top:2;
    padding-left:2;
    font-size:11;
}

任何扩展UIComponent的东西(TextInput和TextArea do)都有一个名为errorColor的样式。它默认为红色。你可以把这个换成你想要的任何东西


此外,如果您有一个用作边框的图像,您可能应该删除中间的像素,使其成为实际边框而不是覆盖。我找到的唯一方法是验证程序将更改组件的
边框颜色
样式。我认为使用图像无法实现这一点-您必须将图像嵌入基本的
GraphicRectangleArborder
子类或类似类中。然后可以将其添加到skin类中:

override public function styleChanged(styleProp:String):void
{
    super.styleChanged(styleProp);

    if (styleProp == "borderColor")
    {
        if (getStyle("borderColor") == getStyle("errorColor"))
        {
            // show error outline
        }
        else
        {
            // hide error outline
        }
    }
}

我真的不想使用图像作为边框,但这是唯一可以改变输入区域颜色的方法。我不知道图像的实际颜色,这就是为什么我不能将背景颜色设置为与图像颜色相同的原因。您应该能够使用任何基本图像编辑器的眼药水工具从图像中获取颜色。在Paint、Paint.Net或IrfanView中打开图像,选择工具,然后单击图像上所需的颜色。