Обнаружение двойной анимации - PullRequest
0 голосов
/ 14 июля 2010

В настоящее время я пишу элемент управления выделением для WPF.Элемент управления состоит из ItemsControl с TextBlock в качестве элемента выбора DataTemplate.ItemsControl является целью двойной анимации, которая манипулирует свойством Canvas.Left.

Я хотел бы создать «круговой режим», который позволит выделению динамически добавлять элемент в свой объект.'tail всякий раз, когда последний элемент прокручивается в поле зрения.Таким образом, шатер никогда не будет казаться пустым.

Как я могу определить, когда TextBlock "прокручивается" в вид (эффективно становится видимым) в результате анимации?

1 Ответ

1 голос
/ 14 июля 2010

Может сработать, если вы проверите, превышает ли свойство ItemControl ActualWidth текущее значение Canvas.Left вашего TextBlock.

Чтобы получить событие изменения, взгляните на это SO: Как мне обработать событие изменения Canvas.Top в WPF?

Может быть, полезно сохранить ссылки на последний элемент управления, который был добавлен в хвост вашей области выделения, чтобы можно было удалить обработчик событий после прокрутки элемента управления в представлении и присоединить обработчик событий к TextBlock затем он добавляется в хвост.

Было бы неплохо иметь возможность нарисовать что-то для лучшего понимания. Если что-то неясно (технически или концептуально) спросите, спросите, спросите ...:)

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