Load element from external file
-
16-06-2021 - |
Question
I want to load a WPF element from an external file. Example I have a file brush.xaml
like this:
<SolidColorBrush>Black</SolidColorBrush>
And I want to load this brush in my code:
using(FileStream stream = new FileStream("brush.xaml"))
Brush myBrush = XamlReader.Load(stream) as Brush;
How can I do?
Solution
Your code is right, but in the xaml file use:
<SolidColorBrush xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
#FF0000
</SolidColorBrush>
With the hexadecimal format. Anyway, if you have any doubt, you can make a test using XamlWriter
.
OTHER TIPS
Instead of loading it by parsing XAML. Put these elements in a resource dictionary. You can reference these resources in both XAML and C#.
For more info:
http://www.codeproject.com/Articles/35346/Using-a-Resource-Dictionary-in-WPF
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow