日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
淺析Silvelight中顯示多重?cái)?shù)據(jù)模型集合

Silvelight中顯示多重?cái)?shù)據(jù)模型集合,在本例中可以對(duì)不同的數(shù)據(jù)模型集合數(shù)據(jù)信息的更新、刪除。***的效果圖也分為兩種不同的情況。

網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)建站!專注于網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開(kāi)發(fā)、小程序設(shè)計(jì)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了泰州免費(fèi)建站歡迎大家使用!

在使用DataForm進(jìn)行單個(gè)數(shù)據(jù)的瀏覽時(shí),有時(shí)候?yàn)榱斯?jié)省空間,我們可能需要在一個(gè)DataForm的數(shù)據(jù)源中放置由不同的數(shù)據(jù)模型集合所組成的數(shù)據(jù)集合。幸運(yùn)的是,Silverlight的DataForm組件的ItemsSource屬性支持這種做法。下面我就為大家介紹如何操作。

實(shí)例說(shuō)明

在這個(gè)例子中,我建立了名為Employee和Delivery的數(shù)據(jù)模型。為了對(duì)比,我使用了一個(gè)DataGrid組件,使它與DataForm使用相同的數(shù)據(jù)源。大家可以看看結(jié)果究竟有何不同。(見(jiàn)最終效果圖)

實(shí)例引申

該實(shí)例可以用作不同的數(shù)據(jù)模型集合數(shù)據(jù)信息的更新、刪除(可惜難以進(jìn)行添加操作)。在為多重?cái)?shù)據(jù)模型集合數(shù)據(jù)源進(jìn)行各個(gè)數(shù)據(jù)模型的信息的添加時(shí),記錄數(shù)據(jù)范圍。然后在進(jìn)行更新或刪除時(shí),根據(jù)這個(gè)范圍將多重?cái)?shù)據(jù)模型集合數(shù)據(jù)源中object對(duì)象轉(zhuǎn)換成對(duì)應(yīng)的數(shù)據(jù)模型后,再進(jìn)行處理即可。

實(shí)例代碼

詳細(xì)的說(shuō)明將在代碼中給出。

DataModel.cs數(shù)據(jù)模型代碼:

 
 
 
 
  1. using System;  
  2. namespace SilverlightClient  
  3. {  
  4.     public class Employee  
  5.     {  
  6.        public int EmployeeID { get; set; }  
  7.         public string EmployeeName { get; set; }  
  8.         public int EmployeeAge { get; set; }  
  9.     }  
  10.     public class Delivery  
  11.     {  
  12.         public int DeliveryID { get; set; }  
  13.         public string DeliveryFrom { get; set; }  
  14.         public string DeliveryTo { get; set; }  
  15.     }  

MainPage.xaml文件代碼:

 
 
 
 
  1. xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"   
  2.    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
  3. xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"   
  4.     mc:Ignorable="d" xmlns:dataFormToolkit="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Data.DataForm.Toolkit" xmlns:data="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Data" x:Class="SilverlightClient.MainPage" 
  5.     d:DesignWidth="320" d:DesignHeight="380"> 
  6.      
  7.          
  8.          
  9.          
  10.      
  11.  
  12. MainPage.xaml.cs文件代碼:  
  13. using System;  
  14. using System.Collections.Generic;  
  15. using System.Collections.ObjectModel;  
  16. using System.Linq;  
  17. using System.Net;  
  18. using System.Windows;  
  19. using System.Windows.Controls;  
  20. using System.Windows.Documents;  
  21. using System.Windows.Input;  
  22. using System.Windows.Media;  
  23. using System.Windows.Media.Animation;  
  24. using System.Windows.Shapes;  
  25. namespace SilverlightClient  
  26. {  
  27.     public partial class MainPage : UserControl  
  28.     {  
  29.         public MainPage()  
  30.        {  
  31.             InitializeComponent();  
  32.             this.Loaded += new RoutedEventHandler(MainPage_Loaded);  
  33.         }  
  34.        void MainPage_Loaded(object sender, RoutedEventArgs e)  
  35.         {  
  36.             dfDataModel.ItemsSource = GetHeterogeneousData();//提供數(shù)據(jù)源  
  37.             dgDataModel.ItemsSource = GetHeterogeneousData();//用作對(duì)比  
  38.         }  
  39.         private List GetEmployees()//生成雇員信息  
  40.         {  
  41.             List returnedValue = new List();  
  42.             returnedValue.Add(new Employee() { EmployeeID = 1, EmployeeName = "張三", EmployeeAge = 23 });  
  43.             returnedValue.Add(new Employee() { EmployeeID = 2, EmployeeName = "李四", EmployeeAge = 24 });  
  44.             returnedValue.Add(new Employee() { EmployeeID = 3, EmployeeName = "王五", EmployeeAge = 25 });  
  45.             return returnedValue;  
  46.         }  
  47.         private List GetDelivery()//生成遞送信息  
  48.        {  
  49.             List returnedValue = new List();  
  50.             returnedValue.Add(new Delivery() { DeliveryID = 1, DeliveryFrom = "南京", DeliveryTo = "寧波" });  
  51.             returnedValue.Add(new Delivery() { DeliveryID = 2, DeliveryFrom = "鎮(zhèn)江", DeliveryTo = "蘇州" });  
  52.             return returnedValue;  
  53.         }  
  54.         private ObservableCollection GetHeterogeneousData()//為DataForm提供多重?cái)?shù)據(jù)模型集合的數(shù)據(jù)源  
  55.         {  
  56.             ObservableCollection returnedValue = new ObservableCollection();  
  57.             GetEmployees().ForEach( x => returnedValue.Add(x));//向集合數(shù)據(jù)源中添加Employee數(shù)據(jù)信息  
  58.             GetDelivery().ForEach(x => returnedValue.Add(x));//向集合數(shù)據(jù)源中添加Delivery數(shù)據(jù)信息  
  59.             return returnedValue;  
  60.        }  
  61.     }  
  62. 最終效果圖


    文章題目:淺析Silvelight中顯示多重?cái)?shù)據(jù)模型集合
    鏈接地址:http://www.dlmjj.cn/article/djcsipd.html