xamarin/Xamarin.Forms

[Bug] Label TextColor DynamicResource does not update after DataTrigger applies TextColor

Aperta

#6864 aperta il 13 lug 2019

 (3 commenti) (0 reazioni) (1 assegnatario)C# (1926 fork)batch import
a/stylee/3 :clock3:help wantedt/bug :bug:up-for-grabs

Metriche repository

Star
 (5644 stelle)
Metriche merge PR
 (Nessuna PR mergiata in 30 g)

Descrizione

Description

@PureWeen - We discussed this issue today at XamDevSummit and as you requested, I reduced it down to a more manageable code example.

I have a Label with TextColor set to a DynamicResource themeTextColor. I also have a DataTrigger added to the Label that will change the TextColor to Red. Switching between my Default and Dark theme works until I enter the condition specified by the DataTrigger. Afterwards, Switching between Default and Dark has no effect.

In my particular case, I am looking up the Color resource in the ResourceDictionary by key and changing the value. This is opposed to replacing the entire ResourceDictionary.

Steps to Reproduce

(see example project)

  1. Switch between Default and Dark a couple of times
  2. Observe DynamicResources DO update
  3. Switch "Triggered" on and off
  4. Attempt to Switch theme
  5. Observe Label TextColor doesn't change

Expected Behavior

Label updates TextColor to theme's themeTextColor

Actual Behavior

Label is stuck on themeTextColor when triggered

Repro Project Link

https://github.com/ChaseMarsh/My.Xamarin.Issues/tree/master/DynamicResouceTriggerIssue

Guida contributor