2013-08-14 3 views

답변

1

을 당신은 스토리 보드를 시작하여 첫 번째 애니메이션을 달성 할 수있는 생각 GridViewItem이 (컨트롤 아래에 컨트롤을 retemplating에 의해 또는 ItemTemplate을에 하나)로드 될 때 . 이 질문에 대한 내 대답을 참조하십시오 : 두 번째 애니메이션 Animation when add or remove item from GridView XAML

, 먼저 몇 가지 번역을 실행하려는 그리고 그것은로드되는 경우 전체의 GridView에 애니메이션을 변환 왜곡처럼 보이지만 각 열에 별도의 규모의 애니메이션을 실행 . 스케일 애니메이션의 경우 어떤 셀이 어떤 열에 있는지 감지하고 GridViewItem 또는 ItemTemplate에 애니메이션을 작성한 다음 해당 애니메이션을 수동으로 실행할 수 있습니다. 이는 각 열에 얼마나 많은 항목이 있는지를 모르는 경우 (예 : 양식 요소가 변경 될 수 있기 때문에) 가장 좋은 방법입니다. 그렇지 않으면 그룹화를 사용하고 각 그룹에서 스케일 애니메이션을 실행할 수 있습니다.

+0

두 번째 애니메이션 : gridview에 많은 항목이 포함되어 있다면 어떻게 될까요? –

+0

화면의 처음 항목에 애니메이션을 실행하기 만하면됩니다. 이것을 알아낼 수있는 몇 가지 방법이 있지만 즉시 사용할 수있는 속성은 없습니다. 명시적인 크기를 사용하는 경우 쉽습니다. 그렇지 않으면 레이아웃을 처음 실행 한 후 SizeChanged 이벤트를 수신하여 크기를 가져올 수 있습니다. 그룹화중인 경우 그룹에서 애니메이션을 실행하는 것이 쉬워야합니다. 한 번에 화면에 너무 많은 항목이 있으면 안되기 때문에 GIF에서 perf를 너무 많이 걱정하지 않아도됩니다. –

+0

실제로 컬렉션에는 수천 가지 항목이있을 수 있습니다. 그것은 단지 예일뿐입니다. –

0

코드에서, 당신은 그것을 시도 할 수 있습니다 :

DoubleAnimation a = new DaoubleAnimation(); 
a.From = 50; 
a.To = 100; 
a.BeginTime = "0:0:2"; 

b.BeginAnimation(Button.WidthProperty, a); 
+0

하나의 버튼을 애니메이션하는 방법을 알고 있습니다. UI 항목 그룹을 순서대로 애니메이트하는 방법을 모르겠습니다. –

+0

확인. 아마 그 일종의 스케쥴러가 필요할 수도 있습니다. – Daniel

+0

아마도 beg37을 입력 할 수 있습니다 – Daniel

관련 문제