WPF ResourceDictionary XAML资源 c#代码 获取与遍历
2021-03-07 10:28
标签:toolbar click cat hda resources param mode tps 绑定
使用C#代码来获取XAML资源,除去正常的FindResource。而且是能查询到资源的对象。 说实话还是很麻烦的。 比如说我现在有一堆静态资源放在xaml的资源中,我想通过绑定的方式来获取。 好比是Path的Data数据 ,我放在Xaml资源中。 我将path作为listbox的ItemTemplate的内容填充,然后将xaml资源中对应的Path的Data的名称作为集合绑定到Listbox。 必然我是需要编写一个转换器的。 这个过程,最重要的是转换器中如何获取静态资源。 代码如下: 通过XamlReader.Load方法加载本地对应的xaml资源后强制转换成ResourceDictionary。 最后获取资源。 如果是想遍历其中的数据则是: 如果想通过名称遍历则是 总体而言还是很麻烦的 所以最简单的方式还是将xaml资源放入到App.xaml中Application.Resources 这个样子就可以通过 来获取了 WPF ResourceDictionary XAML资源 c#代码 获取与遍历 标签:toolbar click cat hda resources param mode tps 绑定 原文地址:https://www.cnblogs.com/lonelyxmas/p/12833966.html public class ToPathData : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
var b = XamlReader.Load(new FileStream(@"C:\Users\wppcn\source\repos\网易云\网易云\Resourece\SvgImgResource.xaml",FileMode.Open)) as ResourceDictionary;
var data = b[value] as Geometry;
return data;
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
return null;
}
}
forearch(var item in b)//内容是object 也就是value
{
//通过手段判断是否你想要的
}
forearch(var item in b.Keys)//内容是object 也就是value
{
var value=b[item];//通过名字直接获取value
}
App.Current.FindResource("资源Key")
文章标题:WPF ResourceDictionary XAML资源 c#代码 获取与遍历
文章链接:http://soscw.com/index.php/essay/61295.html