#xaml #c#-4.0 #silverlight-4.0
#xaml #c #-4.0 #silverlight-4.0
Вопрос:
Я новичок в silverlight, у меня есть анимация для flip из сети, и я выполнил тот же шаг, он отлично работает для меня, и я пытаюсь реализовать эту форму в codebehind, я не знаю, как это сделать, может кто-нибудь помочь мне, пожалуйста.
xmlns:TransitionBehaviours="clr-namespace:RMGUtils.RT.UI.Helpers.ShowHideTransition"
<Grid x:Name="DataGridBack">
<i:Interaction.Triggers>
<i:EventTrigger EventName="MouseLeftButtonDown">
<TransitionBehaviours:ShowHideWithFlip ShowElementName="FrontFaceGrid" HideElementName="AlternateFaceGrid" Direction="BottomToTopCrazy" />
</i:EventTrigger>
</i:Interaction.Triggers>
</Grid>
Ответ №1:
Вы можете вызвать раскадровку из кода следующим образом
mystoryboard.Begin();
Комментарии:
1. ShowHideWithFlip — это файл класса, и в нем в коде есть begin() внутри в качестве последней строки
2. К вашему сведению, я получил образец файла из gallery.expression.microsoft.com/ShowHideWithFlip
Ответ №2:
Код, который вы здесь показываете, на самом деле не раскадровка, а триггер. Весь смысл наличия триггера в том, что вам не нужно писать какой-либо код для его вызова. Вы можете прикрепить его к любым элементам управления, например, вы можете прикрепить его к кнопке и задать для имени события значение Click .
Комментарии:
1. Спасибо, но когда я пытаюсь использовать это внутри сетки данных с помощью кнопки в столбце, для этого это не работает
2. Кнопка внутри dg находится на один уровень ниже, поэтому ShowElementName и AlternateFaceGrid не будут работать, поскольку они не могут найти сетки по их именам, вам нужно изменить код в триггере, чтобы заставить это работать, или вы можете попробовать поместить его за пределы dg.