문제

사용자의 입력을 검증하고 싶습니다. 표준의 배경색 변경으로 검증 오류에 대해 알려주고 싶습니다. Windows 형태 텍스트 상자 제어.

그러나 색상을 즉시 변경하는 대신 색상 페이딩 효과를 사용하고 싶습니다.

간단한 방법이 있습니까?

편집 : 또한 외계 컨트롤에 액세스 할 수 있습니다. 차이가 있는지 확실하지 않습니다.

도움이 되었습니까?

해결책

이것이 C#/. Net이라고 가정하면, 자신의 사용자 컨트롤을 작성하는 것이이 문제에 대한 적절한 솔루션입니다. 상속하는 대신 UserControl, 당신의 통제는 대신 상속해야합니다 TextBox - 이렇게하면 통제력이 보이고 평범한 것처럼 행동합니다. TextBox, 그리고 페이딩 효과를 처리하기 위해 코드를 추가 할 수 있습니다.

public partial class MyCustomTextbox : Textbox
{

}

페이딩을하려면 점차적으로 변경하려면 일종의 타이머를 만들어야합니다. BackColor 다음과 같은 기능으로 :

function FadeBackground(float progress)
{
    Color color = Color.FromArgb(255, (int)((1 - progress) * 255),
        (int)((1 - progress) * 255));
    base.BackColor = color;
}

매개 변수 일 때 progress = 0, 이것은 흰색 배경을 생성하고 언제 progress = 1 이것은 붉은 색입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top