SilverLight学习笔记--如何在xaml文件中操作用户在后台代码定义的类(1)--说明篇(原创)(转载本文请注明出处)

 本文主要示例如何在xaml文件中操作用户使用C#代码自定义的类。主要步骤如下:
1、在VS2008中创建一个新项目CustomTypesInXaml,在此项目下我们新建两个类,一个是Client类,一个是AsiaClients类。两个类的代码分别如下:

  Client.cs代码:

Code

 

AsiaClient.cs代码,此类将会用到我们前面定义的Client类,是Client类的列表
Code
2、在Page.xaml文件中我们需要做如下工作。
 (1)、在xaml头部引入 xmlns:ClientType="clr-namespace:CustomTypesInXaml",这样我们才能够在page.xaml文件中使用我们前面C#定义的两个类。
 (2)、创建UserControl.Resources段
    <UserControl.Resources>
        
<ClientType:AsiaClients x:Key="MyAsianClients">
            
<ClientType:AsiaClients.TheAsiaClient>
                
<ClientType:Client FirstName="Joe" LastName="Zhou" Age="32"/>
                
<ClientType:Client FirstName="David" LastName="Wang" Age="33"/>
                
<ClientType:Client FirstName="Josh" LastName="Li" Age="28"/>
            
</ClientType:AsiaClients.TheAsiaClient>
        
</ClientType:AsiaClients>
    
</UserControl.Resources>
 在此段中我们引用了前面使用C#代码定义的两个类并在此处完成对此两个类的初始化赋值。
 (3)、在UI部分完成界面设计和数据绑定,在此我们设计了一个List,并把它我我们在上面创建的数据进行绑定显示,此段代码如下:
    <Grid x:Name="LayoutRoot" Background="White">
        
<ListBox 
            DataContext
="{StaticResource MyAsianClients }"
            ItemsSource
="{Binding TheAsiaClient}"     >
            
<ListBox.ItemTemplate>          
                
<DataTemplate>
                    
<StackPanel Orientation="Horizontal" >
                       
<TextBlock Text="{Binding FirstName}" Margin="5,0,0,0" ></TextBlock>
                       
<TextBlock Text="{Binding LastName}" Margin="5,0,0,0" ></TextBlock>
                       
<TextBlock Text="{Binding Age}" Margin="5,0,0,0" ></TextBlock>
                    
</StackPanel>
                
</DataTemplate>
            
</ListBox.ItemTemplate>
        
</ListBox>
    
</Grid>
  Page.xaml文件的全部代码如下:
Code
 在此,我们无需在Page.xaml.cs后台写任何代码即完成了在xmal文件中初始化、引用和显示我们用C#自定义类的工作。
前往:Silverlight学习笔记清单
posted @ 2009-07-19 17:27  wsdj  阅读(1567)  评论(0编辑  收藏  举报