나는 정말 명백한 것을 놓치고 있을지도 모른다. 나는 사용자 정의 패널을 작성하려고하는데, 내용이 몇 가지 종속성 속성에 따라 배치됩니다. (애니메이션화 할 수 있기 때문에 에이 있습니다.)Silverlight에서 사용자 지정 종속성 속성에 애니메이션을 적용 할 수 있습니까?
그러나 , 스토리 보드를 실행하여 두 속성을 모두 애니메이션으로 만들려고하면 Silverlight에서 Catastophic Error가 발생합니다. 그러나 그 중 하나만 움직이려고하면 잘 동작합니다. 그리고 내 속성 중 하나와 '내장'속성 (예 : 불투명도) 중 하나를 애니메이션으로 만들려고해도 작동합니다. 그러나 두 가지 사용자 지정 속성을 모두 애니메이션으로 만들려고하면 Catastrophic 오류가 발생합니다.
누구든지이 문제를 발견 할 수 있습니까?
편집 : 두 주당 배당금 scaleX가 및 scaleY 있습니다
- 모두 복식. 패널에서 어린이의 X 및 Y 위치를 조절합니다. 다음은 그 중 하나가 정의하는 방법은 다음과 같습니다
public double ScaleX
{
get { return (double)GetValue(ScaleXProperty); }
set { SetValue(ScaleXProperty, value); }
}
/// <summary>
/// Identifies the ScaleX dependency property.
/// </summary>
public static readonly DependencyProperty ScaleXProperty =
DependencyProperty.Register(
"ScaleX",
typeof(double),
typeof(MyPanel),
new PropertyMetadata(OnScaleXPropertyChanged));
/// <summary>
/// ScaleXProperty property changed handler.
/// </summary>
/// <param name="d">MyPanel that changed its ScaleX.</param>
/// <param name="e">DependencyPropertyChangedEventArgs.</param>
private static void OnScaleXPropertyChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
{
MyPanel _MyPanel = d as MyPanel;
if (_MyPanel != null)
{
_MyPanel.InvalidateArrange();
}
}
public static void SetScaleX(DependencyObject obj, double val)
{
obj.SetValue(ScaleXProperty, val);
}
public static double GetScaleX(DependencyObject obj)
{
return (double)obj.GetValue(ScaleXProperty);
}
편집 : 내가 함께 (있는 경우에 절대적으로 필요하다) 그 결과가 동일 InvalidateArrange를 호출하지 않고 그것을 시도했습니다. 이벤트 핸들러는 Catastrophic 오류가 시작되기 전에 호출되지 않습니다.