Silverlight 在Xaml中调用类的实例

Silverlight 在Xaml中调用类的实例,silverlight,xaml,Silverlight,Xaml,帮我理解。 我在VS2012中创建了SilverlightApplication1的模板。在“我的解决方案”文件夹中创建模型并添加EmployeeTypes.cs类。我需要在Xaml文件(Home.Xaml)中调用EmployeeTypes.cs的实例 我在Home.xaml中这样做: <navigation:Page x:Class="SilverlightApplication1.Home" xmlns:local="clr-namespace:SilverlightApp

帮我理解。 我在VS2012中创建了SilverlightApplication1的模板。在“我的解决方案”文件夹中创建模型并添加EmployeeTypes.cs类。我需要在Xaml文件(Home.Xaml)中调用EmployeeTypes.cs的实例

我在Home.xaml中这样做:

<navigation:Page x:Class="SilverlightApplication1.Home" 
     xmlns:local="clr-namespace:SilverlightApplication1.Models" 
                           ....
                           ....

尝试将其移动到一个UI控件的
资源
,例如
网格的
资源

<Grid x:Name="LayoutRoot">
    <Grid.Resources>
        <local:EmployeeTypes x:Key=" employeeTemplate"/>
    </Grid.Resources>
</Grid>

PS:我的答案来自Windows Phone和WPF背景,在silverlight中可能会有所不同。不确定。

只是猜测一下,EmployeeTypes类是否有默认的无参数构造函数?我添加了文件!没有参数的构造函数。您将此代码放在哪里:
?我看您的代码中有一个输入错误:EmpolyeeTypes!=本地:员工打字成功!哇!现在我需要理解为什么有必要这样做。一般来说,XAML是放置UI控件(用户可见的东西)的地方。在这种情况下,您需要放置一个对象(任何对象,也可以是UI控件的实例),而不是像这样显示给用户。它必须在
资源下
,您可以稍后通过引用它的
来访问它。如果我的解释不够好,请检查此项。还有一个简单的解释是,这是资源内容的语法:
namespace SilverlightApplication1.Models
{
public class EmpolyeeTypes : List<EmployeeType>
{
    public EmpolyeeTypes()
    {
    EmployeeType type;
    type=new EmployeeType("Manager");
    type.Employees.Add(new Employee("Michael"));
    type.Employees.Add(new Employee("Paul"));
    this.Add(type);

    type = new EmployeeType("Project Managers");
    type.Employees.Add(new Employee("Tim"));
    type.Employees.Add(new Employee("John"));
    type.Employees.Add(new Employee("David"));
    this.Add(type);

    }


}
<navigation:Page x:Class="SilverlightApplication1.Home" 
xmlns:local="clr-namespace:SilverlightApplication1.Models"      
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"             
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
xmlns:sdk="http://schemas.microsoft.com/winfx/2006/xaml/presentation/sdk"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:navigation="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Navigation"
mc:Ignorable="d" d:DesignWidth="640" d:DesignHeight="480"
Title="Home"
Style="{StaticResource PageStyle}">
<local:EmployeeTypes x:Key=" employeeTemplate"/>
        .......
        .......


<Grid x:Name="LayoutRoot">

</Grid>
<Grid x:Name="LayoutRoot">
    <Grid.Resources>
        <local:EmployeeTypes x:Key=" employeeTemplate"/>
    </Grid.Resources>
</Grid>
<navigation:Page 
    ......
    >
    <navigation:Page.Resources>
        <local:EmployeeTypes x:Key=" employeeTemplate"/>
    </navigation:Page.Resources>
</navigation:Page>