Если вы хотите домашний кофе, это будет довольно тривиально. Я бы просто использовал VisualStateManager . Имеется 2 состояния для вашей панели «Как это работает».
- HowDoIWork_Visible
- HowDoIWork_Hidden
Чтобы выполнить эффект скольжения, вам нужно расположить панель за пределами экрана. Поэтому я бы добавил TranslateTransform к свойству RenderTransform панели. Его атрибут «X» изначально будет установлен на отрицательную ширину вашей панели. Для получения дополнительной информации см. TranslateTransform :
Для состояния HowDoIWork_Visible установите для свойства X объекта TranslateTransform значение 0, а для параметра Visibility - значение "Visible" или Opacity - значение "1.0".
Теперь создайте состояние HowDoIWork_Hidden , чтобы вы могли снова скрыть панель. Установите видимость панели на «Свернутый» или ее непрозрачность на «0.0». Также установите свойство X TranslateTransform обратно на Width.
Когда пользователь нажимает кнопку, вам нужно просто позвонить:
VisualStateManager.GoToState("HowDoIWork_Visible");
Чтобы снова скрыть панель:
VisualStateManager.GoToState("HowDoIWork_Hidden");
Другие идеи ...
Вы также можете адаптировать Аккордеон Silverlight Toolkit, чтобы делать то, что вы хотите:
http://silverlight.codeplex.com/wikipage?title=Silverlight%20Toolkit%20Control%20Overview%20Pg1&referringTitle=Home
Если вы не застряли на эффекте скольжения, ChildWindow предоставляет простой способ открыть вид диалогового типа.
http://www.wintellect.com/CS/blogs/jprosise/archive/2009/04/29/silverlight-3-s-new-child-windows.aspx