Wpf, style is not being applied

前端 未结 6 1768
执念已碎
执念已碎 2021-01-13 14:25

I\'ve written a user control with popup, who\'s content is being set outside the control. The ControlTemplate of that control looks like the following:



        
6条回答
  •  无人及你
    2021-01-13 14:37

    Edit2

    I've set the Foreground of the UserControl to something else. This behavior is because the child TextBlock controls of the UserControl inherit the Foreground-Settings somehow. This has nothing to do with the popup or some other approaches we tried yet.

    I've stumbled upon another question with a similar problems here: Cannot override controls foreground colour in wpf

    I suggest to accept this strange behavior and just set a Foreground Color of the UserControl instead:

    
    

    previous Edit

    You had my curiousity with this weird behavior, but after looking at your PoC it was rather obvious :) The Popup has some attached Properties TextElement.* where you can style the text elements in the popup. This was new to me, too and I will reseach a bit more afterwards. Nevertheless: Workaround for your Problem is to not style the TextBlock but the Popup instead. your code could look something like following :

    
          
            
            
          
    
          
            
            
              
            
          
        
    

    I changed the styles to be outside of the controls, of course you can just use the attached properties of the popup directly. But initially you wanted to know how it works with the styles attached at the border, it does not matter now where you add the styles. You can use a ResourceDictionary for example.

提交回复
热议问题