WPF: può utilizzare StaticResource solo una volta

Ho una risorsa statica definita nel mio XAML di Windows WPF:

   

Voglio usarlo due volte:

  

Ma viene visualizzato come immagine del pulsante solo una volta. Sull’ultimo pulsante. Il primo pulsante non ha immagine.

Quando rimuovo il secondo pulsante, funziona per il primo. Come utilizzare StaticResource più volte? La GUI Designer di Visual Studio visualizza le immagini su entrambi i pulsanti.

Per impostazione predefinita, le risorse XAML sono condivise, il che significa che c’è una sola istanza che viene riutilizzata tutte le volte in cui viene referenziata in XAML.

Tuttavia, un controllo Image (come qualsiasi altro elemento dell’interfaccia utente) può avere solo un controllo genitore, quindi non può essere condiviso.

Puoi impostare l’attributo x:Shared su false:

  

In genere non utilizzi elementi dell’interfaccia utente come risorse. Un’alternativa sarebbe una risorsa BitmapImage come questa: