首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 媒体动画 > CAD教程 >

关于在Application引入类型转化器,该如何处理

2012-03-31 
关于在Application引入类型转化器JsonArray data System.Json.JsonArray.Parse(jsonData) as System.Jso

关于在Application引入类型转化器
JsonArray data = System.Json.JsonArray.Parse(jsonData) as System.Json.JsonArray;
grid.ItemsSource = GenerateData(data).ToDataSource();
通过JSON将数据绑定到DataGrid之后,发现字符串读出来之后,双引号没有去掉...
想通过自定义的转化器在绑定时候处理一下,在APP.xaml文件中
<Application x:Class="Sl5Test.App" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
 xmlns:UConvert="clr-namespace:Sl5Test.App_Code" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
  <Application.Resources>
  <UConvert:MarkConverter x:Key="MarkConverter" />
  <ResourceDictionary>
  <ResourceDictionary.MergedDictionaries>
  <ResourceDictionary Source="Assets/Styles.xaml"/>
  </ResourceDictionary.MergedDictionaries>
  </ResourceDictionary>
  </Application.Resources>
</Application>
报错:错误 The type 'ResourceDictionary' is inside a ResourceDictionary and does not have a key.
版本是:Siverlight 5
请问,该如何添加引用以便让{Binding XXX, Converter={StaticResource MarkConverter}好绑定...
或者,有没有什么其他好的办法可以处理?
要绑定的DataGrid是在子窗口中,无法在窗口里使用<UserControl.Resources></UserControl.Resources>

[解决办法]
使用DataContractJsonSerializer来将Json字符串反序列化为对象即可。参照以下文章,不会出现你这里的问题:
http://www.cnblogs.com/chengxingliang/archive/2011/04/15/2016280.html
[解决办法]
这个很容易,来捡分了。。

XML code
<Application x:Class="Sl5Test.App" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:UConvert="clr-namespace:Sl5Test.App_Code" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">  <Application.Resources>  <UConvert:MarkConverter x:Key="MarkConverter" />  <ResourceDictionary>  <ResourceDictionary.MergedDictionaries>  <ResourceDictionary Source="Assets/Styles.xaml"/>  </ResourceDictionary.MergedDictionaries>  </ResourceDictionary>  </Application.Resources></Application> 

热点排行