我正在阅读更多关于XAML的内容,我已经创建了一个XML文件,并希望加载它。但是,当我使用ContentProperty属性时,更重要的是,当我从XML文件中删除Company.Employees标记时,在加载xml文件时,我得到错误消息"cannot add to Company“。
代码是:
<?xml version="1.0" encoding="utf-8" ?>
<Company Name="BBC" xmlns="clr-namespace:XamlLoading;assembly=XamlLoading">
<Company.Owner>
<Person Name="John" Age="49"/>
</Company.Owner>
<!--<Company.Employees>
<Person Name="Dave" Age="66" />
<Person Name="Paul" Age="45"/>
</Company.Employees>-->
<Person Name="Dave" Age="66" />
<Person Name="Paul" Age="45"/>
</Company>[ContentProperty("Employees")]
public class Company
{
public Company()
{
Employees = new List<Person>();
}
public Person Owner { get; set; }
public string Name { get; set; }
public List<Person> Employees { get; set; }
}
static void Main(string[] args)
{
using (FileStream fs = File.OpenRead(@"..\..\company.xml"))
{
Company c = (Company)XamlReader.Load(fs); * ERROR HERE
Console.WriteLine(c.Name);
Console.WriteLine(c.Owner);
foreach (var item in c.Employees)
{
Console.WriteLine("{0} : ", item);
}
Console.ReadLine();
}
}发布于 2011-03-23 22:55:11
我建议你更新到最新版本的.NET,你的代码很适合我。
这是一个非常有趣的XAML案例研究。我从来没有见过它以这种方式使用。通常,XAML像HTML标记一样用于声明性地定义用户界面。Blend是一个所见即所得的编辑器,用于通过生成XAML来创建用户界面。
您已经展示了使用XamlReader从xml实现数据的一些有趣的潜力。
https://stackoverflow.com/questions/3114023
复制相似问题