Có cách nào để thêm tài nguyên vào ResourceDictionary từ mã mà không cung cấp cho nó khóa tài nguyên không?Tạo tài nguyên XAML từ mã không có khóa
Ví dụ, tôi có tài nguyên này trong XAML:
<TreeView.Resources>
<HierarchicalDataTemplate DataType="{x:Type xbap:FieldPropertyInfo}"
ItemsSource="{Binding Path=Value.Values}">
<TextBlock Text="{Binding Path=Name}" />
<HierarchicalDataTemplate>
</TreeView.Resources>
tôi cần phải tạo tài nguyên này tự động từ mã và thêm nó vào TreeView ResourceDictionary. Tuy nhiên, trong XAML không có Khóa nghĩa là nó được sử dụng, theo mặc định, cho tất cả các kiểu FieldPropertyInfo. Có cách nào để thêm nó vào các nguồn tài nguyên trong mã mà không có một chìa khóa hoặc là có một cách tôi có thể sử dụng một chìa khóa và vẫn có nó được sử dụng trên tất cả các loại FieldPropertyInfo?
Dưới đây là những gì tôi đã làm trong C# cho đến nay:
HierarchicalDataTemplate fieldPropertyTemplate = new HierarchicalDataTemplate("FieldProperyInfo");
fieldPropertyTemplate.ItemsSource = new Binding("Value.Values");
this.Resources.Add(null, fieldPropertyTemplate);
Rõ ràng, thêm tài nguyên vào các ResourceDictionary null chìa khóa không hoạt động.
Mặc dù điều này chạy, mẫu không được TreeView sử dụng. Có vẻ như một cái gì đó về khóa tài nguyên đang ngăn không cho nó được sử dụng. –
@Orion: Vì vậy, bạn đã thấy câu trả lời của tôi, và hoàn toàn chỉnh sửa của bạn để sao chép của tôi? Thực sự sang trọng ... –