0
변경 불가능한 개체 인스턴스에서 Foreground.Color를 애니메이션으로 만들 수 없습니다.immutable 개체 인스턴스에서 'Foreground.Color'에 애니메이션을 적용 할 수 없습니다.
private void AnimColor()
{
int counter = 0;
Storyboard mystoryboard = new Storyboard();
foreach (char letter in txtSend.Text)
{
Run newLetter = new Run(letter.ToString());
newLetter.Name = "letter_" + counter.ToString();
textblock1.Inlines.Add(newLetter);
counter++;
ColorAnimation k = new ColorAnimation();
//MessageBox.Show(letter.Name);
Storyboard.SetTarget(k, newLetter);
Storyboard.SetTargetProperty(k, new PropertyPath("Foreground.Color"));
k.From = Colors.Red;
k.To = Colors.Blue;
k.Duration = TimeSpan.FromSeconds(0.5);
k.BeginTime = TimeSpan.FromSeconds(0.5 * counter);
mystoryboard.Children.Add(k);
}
try
{
mystoryboard.Begin(this);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
동적 컨트롤에 동적 애니메이션을 추가하는 방법을 정확히 모르겠습니다.
전에, 당신이 newLetter.Foreground = 새로운 SolidColorBrush'처럼 실행에 (변경 가능) 브러쉬를 할당해야합니다 (Colors.Red를) ; ' – Clemens
고맙습니다.이 말이 맞습니다. 나는 그것이 기본 색상의 검정색이라고 가정했다. –
당신은 기본 검정색을 가지고 있지만, (오류 메시지가 말하는 것처럼) 브러쉬는 변경할 수 없다. – Clemens