0

У меня собственно имеется разметка самого окна, но так же мне нужно сделать ряд анимации при помощи разметки XAML. Поэтому хотелось бы сделать это в отдельном файле, что бы можно было легко ориентироваться в коде. Возможно ли использовать два файла разметки для одного окна? Если да, то как это сделать? Если нет, то какие есть альтернативы?

  • 1
    Что для вас "файл разметки"? И что вы хотите выносить я так и не понял? Если вам надо анимации написать в отдельном файле, то делаете словарь ресурсов, подключаете его, а в нем ваши анимации по типу <Storyboard x:Key="MyAnim" .. />, все дальше подключаете анимацию где вам надо. – EvgeniyZ May 14 '21 at 12:24
  • UserControl? DataTemplate? Стили в отдельном ResourceDictionary? возможностей миллион. – VladD May 14 '21 at 12:45
  • Можете привести пример описания анимации в ResourceDictionary? К примеру при нажатии на кнопку тексбокс сдвигается вправо на 300 пикселей. – Bred Wud May 14 '21 at 13:00
  • Вы знаете как работают стили вообще в WPF? Вы знаете, что вообще такое стили? Вот вам надо, чтобы кнопка имела красный Background, вы пишете <Button Background = "Red"/>, ок, а если таких свойств много, то как тогда? Тогда вы делаете стиль <Style x:Key ="SomeStyle" TargetType="Button"><Setter Property = "Background" Value = "Red"/></Style> и к кнопке уже применяете его <Button Style = "{StaticResource SomeStyle}" />. Стили хранятся в ресурсах, это может быть ресурс контрола, а может быть ресурс всего проекта целиком. – EvgeniyZ May 14 '21 at 13:42
  • 1
    Вот вам простая разметка, где есть настроенная анимация, она в ресурсах окна, а по клику (как и просили), применяется эта анимация к нужному объекту. То есть мы как и в случае с цветом, отделили анимацию, поместив ее в ресурсы. Если нужна анимация за пределами окна, то делается словарь, просто жмется в проекте "Добавить - Словарь ресурсов" и в созданноый файл перемещаются все ресурсы. Сам файл подключается в App.xaml примерно так, ну и словарей может быть сколько угодно и они могут быть где угодно (хоть в отдельном проекте). – EvgeniyZ May 14 '21 at 13:47
  • https://ru.stackoverflow.com/a/1266479/373567 - ResourceDictionary – aepot May 14 '21 at 14:18

0 Answers0