XAML- P5
Số trang: 50
Loại file: pdf
Dung lượng: 1.51 MB
Lượt xem: 15
Lượt tải: 0
Xem trước 5 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
XAML- P5: Các bộ sưu tập là hướng dẫn cho những người khởi xướng chương trình mã hóamuốn khám phá một công nghệ cụ thể. Nếu không có bỏ qua những khía cạnhlý thuyết, chúng tôi luôn ưu tiên để thực hành để bạn có thểnhanh chóng được tự trị. Trước khi vào trung tâm của vấn đề, lưu ý các sốthông tin chung về bộ sưu tập.
Nội dung trích xuất từ tài liệu:
XAML- P5 Lier les données à un DataSet 7 Plusieurs sources de données Dans l’exemple, nous avons travaillé avec un seul DataContext défini pour tout l’écran. Il est possible de définir un DataContext différent pour chaque élément de la fenêtre. Il est également possible d’utiliser une table pour charger un contrôle de type liste. Si vous souhaitez reproduire l’exemple, modifiez votre base de données et recréez le schéma XSD pour refléter le graphique ci-dessous. b Figure 7-9 : Nouveau schéma XSD Pour créer le schéma, reportez-vous à la page 192. Renvoi Ensuite, nous devons apporter quelques modifications au code .NET. Public Sub New() InitializeComponent() m_adapter = New _ DBXAMLDataSetTableAdapters.Carnet_adressesTableAdapter m_adapter.Fill(m_data.Carnet_adresses) Dim adapter As New _ DBXAMLDataSetTableAdapters.PaysTableAdapter adapter.Fill(m_data.Pays) End Sub Non seulement nous chargeons le membre m_data avec la DataTable Carne- t_adresses mais nous chargeons également la table Pays. Private Sub Win_loaded(ByVal sender As Object _ , ByVal e As RoutedEventArgs) m_i = 0 Me.DataContext = m_data.Carnet_adresses.Rows(m_i) Me.lstPays.DataContext = m_data End SubPlease purchase PDF Split-Merge on www.verypdf.com to du codeur •this waterma Le guide remove 201 7 Lier les données à son interface utilisateur La table Pays est maintenant chargée dans le DataSet et le DataContext de la liste est différent de celui du reste de l’écran. Ajoutez ces balises dans le code XAML. Pays Remarquez que la source est non pas un champ mais une table. C’est l’attribut DisplayMemberPath qui précise le nom du champ à afficher. Dans cet exemple, le nom est le même car il s’agit du champ Pays dans la table Pays. m Figure 7-10 : ListBox liée à un DataSet Cette solution fonctionne parfaitement pour charger la liste mais, du coup, il ne nous est pas possible de lier la valeur à notre carnet d’adresses. La solution la plus simple est de modifier à nouveau le code .NET. Private Sub Win_loaded(ByVal sender As Object _ , ByVal e As RoutedEventArgs) m_i = 0 Me.DataContext = m_data.Carnet_adresses.Rows(m_i) Dim bind As New Binding(Pays) bind.Source = m_data Me.lstPays.SetBinding(ListBox.ItemsSourceProperty _ , bind) End SubPlease purchase PDF codeur 202 • Le guide du Split-Merge on www.verypdf.com to remove this waterma Lier les données à un objet métier 7 Le code XAML devient alors : De cette façon, une source spécifique est définie pour la liste et la source par défaut pour la valeur. Cet exemple démontre non seulement qu’il est possible de réaliser des liaisons vers divers objets mais également que la liaison peut être effectuée sur différents attributs. Vous pourriez par exemple définir une liaison sur la couleur du fond. 7.2 Lier les données à un objet métier Au lieu de lier les données à un DataSet, vous pouvez également les lier à un objet quelconque. Généralement, il s’agira d’un objet dit métier. En effet, en programmation professionnelle, les développements sont généralement divisés en trois couches, la couche de liaison à base de données, la couche métier, dite business, et la couche de présentation. La couche de présentation lit les données non pas directement dans la couche d’accès à la base de données mais uniquement dans la couche métier, qui prendra en charge une éventuelle transformation des données. Nous allons construire un objet métier capable de recevoir les données de notre exemple. Public Class Business Private m_nom As String Private m_prenom As String Private m_adresse As String Private m_cp As String Private m_localite As String Private m_pays As Integer Public Property Nom() As String Get Return m_nom End Get Set(ByVal value As String) m_nom = value.ToUpper() End SetPlease purchase PDF Split-Merge on www.verypdf.com to du codeur •this waterma Le guide remove 203 7 Lier les données à son interface utilisateur End Property Public Property Prenom() As String Get Return m_prenom End Get Set(ByVal value As String) m_prenom = valueli End Set End Property Comme vous pouvez le voir, il s’agit essentiellement de définir des membres privés et les propriétés qui leur sont associées. Vous pourriez être tenté de définir directement les membres comme publics et ainsi de vous passer des propriétés. Toutefois, il vaut mieux suivre dès le dépar ...
Nội dung trích xuất từ tài liệu:
XAML- P5 Lier les données à un DataSet 7 Plusieurs sources de données Dans l’exemple, nous avons travaillé avec un seul DataContext défini pour tout l’écran. Il est possible de définir un DataContext différent pour chaque élément de la fenêtre. Il est également possible d’utiliser une table pour charger un contrôle de type liste. Si vous souhaitez reproduire l’exemple, modifiez votre base de données et recréez le schéma XSD pour refléter le graphique ci-dessous. b Figure 7-9 : Nouveau schéma XSD Pour créer le schéma, reportez-vous à la page 192. Renvoi Ensuite, nous devons apporter quelques modifications au code .NET. Public Sub New() InitializeComponent() m_adapter = New _ DBXAMLDataSetTableAdapters.Carnet_adressesTableAdapter m_adapter.Fill(m_data.Carnet_adresses) Dim adapter As New _ DBXAMLDataSetTableAdapters.PaysTableAdapter adapter.Fill(m_data.Pays) End Sub Non seulement nous chargeons le membre m_data avec la DataTable Carne- t_adresses mais nous chargeons également la table Pays. Private Sub Win_loaded(ByVal sender As Object _ , ByVal e As RoutedEventArgs) m_i = 0 Me.DataContext = m_data.Carnet_adresses.Rows(m_i) Me.lstPays.DataContext = m_data End SubPlease purchase PDF Split-Merge on www.verypdf.com to du codeur •this waterma Le guide remove 201 7 Lier les données à son interface utilisateur La table Pays est maintenant chargée dans le DataSet et le DataContext de la liste est différent de celui du reste de l’écran. Ajoutez ces balises dans le code XAML. Pays Remarquez que la source est non pas un champ mais une table. C’est l’attribut DisplayMemberPath qui précise le nom du champ à afficher. Dans cet exemple, le nom est le même car il s’agit du champ Pays dans la table Pays. m Figure 7-10 : ListBox liée à un DataSet Cette solution fonctionne parfaitement pour charger la liste mais, du coup, il ne nous est pas possible de lier la valeur à notre carnet d’adresses. La solution la plus simple est de modifier à nouveau le code .NET. Private Sub Win_loaded(ByVal sender As Object _ , ByVal e As RoutedEventArgs) m_i = 0 Me.DataContext = m_data.Carnet_adresses.Rows(m_i) Dim bind As New Binding(Pays) bind.Source = m_data Me.lstPays.SetBinding(ListBox.ItemsSourceProperty _ , bind) End SubPlease purchase PDF codeur 202 • Le guide du Split-Merge on www.verypdf.com to remove this waterma Lier les données à un objet métier 7 Le code XAML devient alors : De cette façon, une source spécifique est définie pour la liste et la source par défaut pour la valeur. Cet exemple démontre non seulement qu’il est possible de réaliser des liaisons vers divers objets mais également que la liaison peut être effectuée sur différents attributs. Vous pourriez par exemple définir une liaison sur la couleur du fond. 7.2 Lier les données à un objet métier Au lieu de lier les données à un DataSet, vous pouvez également les lier à un objet quelconque. Généralement, il s’agira d’un objet dit métier. En effet, en programmation professionnelle, les développements sont généralement divisés en trois couches, la couche de liaison à base de données, la couche métier, dite business, et la couche de présentation. La couche de présentation lit les données non pas directement dans la couche d’accès à la base de données mais uniquement dans la couche métier, qui prendra en charge une éventuelle transformation des données. Nous allons construire un objet métier capable de recevoir les données de notre exemple. Public Class Business Private m_nom As String Private m_prenom As String Private m_adresse As String Private m_cp As String Private m_localite As String Private m_pays As Integer Public Property Nom() As String Get Return m_nom End Get Set(ByVal value As String) m_nom = value.ToUpper() End SetPlease purchase PDF Split-Merge on www.verypdf.com to du codeur •this waterma Le guide remove 203 7 Lier les données à son interface utilisateur End Property Public Property Prenom() As String Get Return m_prenom End Get Set(ByVal value As String) m_prenom = valueli End Set End Property Comme vous pouvez le voir, il s’agit essentiellement de définir des membres privés et les propriétés qui leur sont associées. Vous pourriez être tenté de définir directement les membres comme publics et ainsi de vous passer des propriétés. Toutefois, il vaut mieux suivre dès le dépar ...
Tìm kiếm theo từ khóa liên quan:
ngôn ngữ lập trình XAML phương pháp lập trình lập trình web ngôn ngữ php lập trình cơ bản XMLGợi ý tài liệu liên quan:
-
Giáo trình Lập trình logic trong prolog: Phần 1
114 trang 192 0 0 -
Giáo trình Lập trình C căn bản: Phần 1
64 trang 170 0 0 -
Giáo trình Lập trình C căn bản
135 trang 168 0 0 -
Luận văn tốt nghiệp Công nghệ thông tin: Xây dựng website bán hàng nông sản
67 trang 141 0 0 -
14 trang 134 0 0
-
Tiểu luận môn Công nghệ phần mềm: Tìm hiểu công nghệ nhận diện giọng nói
27 trang 133 0 0 -
[Thảo luận] Học PHP như thế nào khi bạn chưa biết gì về lập trình?
5 trang 131 0 0 -
161 trang 130 1 0
-
Bài giảng Lập trình web nâng cao: Chương 8 - Trường ĐH Văn Hiến
36 trang 116 1 0 -
Bài giảng Phương pháp lập trình: Chương 9 - GV. Từ Thị Xuân Hiền
36 trang 112 0 0