Достижение анимации «скольжения вниз» в WPF

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

Желаемая высота содержимого неизвестна во время компиляции.

Я подумал, что мы можем определить скольжение вниз как анимацию:



    

Но, к сожалению, нет. Мы получаем сообщение об ошибке

Невозможно заморозить это дерево временной шкалы раскадровки для использования между потоками.

Похоже, что мы не можем использовать привязку при определении параметров анимации. (Обсуждается также в этот вопрос .)

Есть ли у кого-нибудь идеи, как я могу подойти к этому? Я опасаюсь использовать LayoutTransform.ScaleY , потому что это создаст искаженное изображение.

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


Чего стоит, вот текущее состояние моего шаблона управления.


    
            
            

                
            
            

                

            
        
    
        
            
            
        
        
            
        
        
            
                
                    
                    
                
                
                
                

            
        

            

            

    
    
        
            

                
                
                
            
                
                    
                
        
            

                
            
        


12
задан Community 23 May 2017 в 12:33
поделиться