Это будет трудно сделать в обычном XAML, потому что нет ни одного свойства, которое вы можете проверить, которое бы указывало, находится ли указатель мыши над следующим (или предыдущим) элементом в списке.
Способ, которым я реализовал бы это: я бы создал класс-обертку для элементов в вашем списке, который предоставляет свойства IsMouseOver
, FontSize
и Content
. Я бы реализовал родительский класс, который поддерживает некоторую индексируемую коллекцию этих элементов (например, массив или список) и регистрирует события PropertyChanged
своих элементов, чтобы он мог знать, какой элемент в списке является мышью. в настоящее время зависания. В этом случае родительский класс будет отвечать за корректировку FontSize
дочерних объектов при каждом изменении текущего элемента размещения. Все, что делает XAML - это привязка к FontSize
на дочерних объектах.
Заметьте, кстати, что если вы реализуете какой-нибудь крутой эффект (такой, как тот, на который ссылается Аарон, который, кстати, не делает того, о чем вы говорили), то при изменении размеров элементов, когда IsMouseOver
изменяется, перемещает их на экране таким образом, что элемент, над которым находится мышь, тоже изменяется, ваши пользователи будут выслеживать вас и убивать вас во сне.