Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Os aplicativos que usam DynamicResource incorretamente agora falham no runtime.
Versão introduzida
.NET 10
Comportamento anterior
Anteriormente, os aplicativos que foram inicializados DynamicResource incorretamente continuariam em execução sem falhas. Os valores recuariam para padrões e um InvalidOperationException seria exibido na saída.
Novo comportamento
Os aplicativos agora falham com um erro semelhante ao seguinte:
System.Windows.Markup.XamlParseException: Set property 'System.Windows.ResourceDictionary.Source' threw an exception.
Isso ocorre quando um tipo de recurso incorreto é usado com DynamicResource. Por exemplo, o snippet de código abaixo causa uma falha porque um SolidColorBrush é usado em vez de System.Windows.Media.Color:
<SolidColorBrush x:Key="RedColorBrush" Color="#FFFF0000" />
<SolidColorBrush x:Key="ResourceName" Color="{DynamicResource RedColorBrush}" />
Tipo de mudança disruptiva
Trata-se de uma alteração incompatível com a origem e comportamental.
Motivo da alteração
Essa alteração melhora o desempenho do uso de DynamicResource. A otimização garante que a inicialização de recursos incorreta seja capturada imediatamente, impedindo o comportamento não intencional.
Ação recomendada
Para evitar falhas, verifique se os tipos de recursos corretos são usados com DynamicResource. Por exemplo, o código a seguir resolve o problema usando System.Windows.Media.Color em vez de SolidColorBrush:
<Color x:Key="RedColor">#FFFF0000</Color>
<SolidColorBrush x:Key="ResourceName" Color="{DynamicResource RedColor}" />
APIs afetadas
Nenhum.