Kodkitabi

StaticResource ve DynamicResource

XAML içinde staticresource ve dynamicresource kavramını, kullanım sınırlarını ve güvenilir uygulama biçimini öğrenin.

StaticResource ve DynamicResource, XAML ile kaynak ve stil çalışırken veriyi açık, öngörülebilir ve sürdürülebilir biçimde işlemek için kullanılan yaklaşımı açıklar. XAML nesne ağacını bildirimsel kurar; kaynak arama, veri bağlama ve stil sistemi çalışma zamanındaki görünümü birlikte belirler.

Görünüme iş mantığı gömmek yerine binding ve command sınırlarını kullanmak, kaynak kapsamını dar tutmak ve bağlama hatalarını izlemek gerekir. İsimlendirme, küçük sorumluluklar ve görünür veri akışı; kodun yalnızca çalışmasını değil, anlaşılmasını da sağlar. Aşağıdaki örnek, konuyu küçük ve izlenebilir bir akış içinde gösterir.

Yaygın hata ve doğru yaklaşım

Girdi, çıktı ve hata sözleşmesini belirsiz bırakmak çağıran kodu kırılgan hâle getirir. Normal akış kadar başarısızlık davranışını da açıkça tasarlayın.

Sonuç

StaticResource ve DynamicResource, doğru sınırlar ve açık bir sözleşmeyle kullanıldığında XAML kodunun güvenilirliğini artırır. Önce doğruluğu kurun; ölçüm göstermeden karmaşık optimizasyona yönelmeyin.

StaticResource ve DynamicResource örneği
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
                    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
  <SolidColorBrush x:Key="BrandBrush" Color="#0C54C2" />
  <Style TargetType="Button">
    <Setter Property="Padding" Value="12,8" />
    <Setter Property="Background" Value="{StaticResource BrandBrush}" />
  </Style>
</ResourceDictionary>