Общее слайд-шоу начало работы - PullRequest
0 голосов
/ 21 ноября 2011

Это вопрос для начала о том, как создать повторно используемый элемент управления слайд-шоу wpf:

  • , которая отображает последовательность любых визуализируемых элементов, например, серия элементов управления Image или серия UserControls ( я должен нацелиться на ContentControl, или есть более широкий тип, который включает в себя больше визуализируемых элементов управления? )
  • элемент управления должен иметь возможность принимать IList некоторого вида , который будет представлять элементы / слайды
  • элемент управления должен предоставлять свойство Interval, определяющее длительность каждого слайда, но я даже не знаю основ того, как начать работу с ним с точки зрения , предлагающего это свойство для настройки в xaml ?
  • и каким должен быть контейнер, если он есть, для отдельных слайдов / элементов управления, которые передаются в ?

Ответы [ 2 ]

1 голос
/ 21 ноября 2011

Я только что углубился в WPF для проекта, подобного «Слайд-шоу», где я показываю номера заказов клиентов на экране в течение некоторого периода времени, прежде чем показывать следующий, и использую Effect / Transitions / Storyboards для перехода к следующему Рамка. Я нашел хорошую статью о CodeProject

Я использовал сетку с 2 рядами:

  1. Содержит мою "Изменяющуюся область".
  2. Содержит статическую информацию (логотип, элементы управления и т. Д.).

Запомните, чтобы установить "cliptobounds = true" в вашей изменяющейся области, если вы используете какие-либо преобразования на ней. (Я знаю, что вы сказали, что изначально не используете переходы, но как только люди увидят это, они будут спрашивать).

Свойства зависимостей также легко создаются в C #, если вы просто наберете propdp и нажмете клавишу Tab.

1 голос
/ 21 ноября 2011

Для начала вам, вероятно, следует создать UserControl, который содержит элемент управления Image и, возможно, Next / Previous Buttons и все остальное, что вам может понадобиться.Все они были бы выложены как обычно с использованием различных панелей, вы, вероятно, могли бы оформить большинство из них только с помощью Grid.

После этого ваш UserControl будет реализовывать ImageSource (ваши IList или IEnumerable изображений) и ваш интервал в качестве свойств зависимости.Затем они устанавливаются в XAML.

Затем вы пишете логику, которая загружает следующее изображение и устанавливает его как свойство Source этого изображения, это может произойти в событии изменения для свойства ImageSource.Затем вы можете получить как можно больше опыта с предварительной загрузкой / кэшированием изображений и т. Д.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...