Silverlight/XAML – Learning by Coding

[ sl2_linq_readxml_1.xaml --> Grafik anzeigen ]

  1: <?xml version="1.0" encoding="UTF-8"?>
  2: <!-- coded by Thomas Meinike 08/08 -->
  3: <UserControl x:Class="sl2_linq_readxml_1.Page"
  4:   xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
  5:   xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
  6:   xmlns:data="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Data"
  7:   Width="800" Height="600">
  8: 
  9:   <Canvas>
 10: 
 11:     <TextBlock Canvas.Left="30" Canvas.Top="30" FontSize="18" Foreground="#00C"
 12:       Text="XML-Daten mit LINQ in DataGrid einlesen 1 (XML im XAP-File)"/>
 13: 
 14:     <data:DataGrid Canvas.Left="30" Canvas.Top="70" x:Name="dgrid"
 15:       AutoGenerateColumns="False" IsReadOnly="True" CanUserResizeColumns="False"
 16:       HorizontalContentAlignment="Center" RowHeight="25" RowBackground="#FFF" FontSize="16"
 17:       GridLinesVisibility="All" HeadersVisibility="Column">
 18: 
 19:       <data:DataGrid.Columns>
 20:         <data:DataGridTextColumn Header="Technologie" Binding="{Binding t}" FontSize="14"/>
 21:         <data:DataGridTextColumn Header="Bezeichnung" Binding="{Binding b}" FontSize="14"/>
 22:         <data:DataGridTextColumn Header="Herausgeber" Binding="{Binding h}" FontSize="14"/>
 23:         <data:DataGridTextColumn Header="Jahr" Binding="{Binding j}" FontSize="14"/>
 24:       </data:DataGrid.Columns>
 25: 
 26:     </data:DataGrid>
 27: 
 28:   </Canvas>
 29: 
 30: 
 31:   <!-- // zusätzlich verwendeter VB.NET-Code in Page.xaml.vb:
 32: 
 33:   Imports System.Xml.Linq 'Verweis System.XML.Linq wurde dem Projekt hinzugefügt
 34: 
 35:   Partial Public Class Page
 36:     Inherits UserControl
 37: 
 38:     Public Class Data
 39:       Private _t As String  'Technologie
 40:       Private _b As String  'Bezeichnung
 41:       Private _h As String  'Herausgeber
 42:       Private _j As Integer 'Jahr
 43: 
 44:       Property t() As String
 45:         Get
 46:           Return _t
 47:         End Get
 48:         Set(ByVal value As String)
 49:           _t value
 50:         End Set
 51:         End Property
 52: 
 53:         Property b() As String
 54:           Get
 55:             Return _b
 56:           End Get
 57:           Set(ByVal value As String)
 58:             _b value
 59:           End Set
 60:         End Property
 61: 
 62:         Property h() As String
 63:           Get
 64:             Return _h
 65:           End Get
 66:           Set(ByVal value As String)
 67:             _h value
 68:           End Set
 69:         End Property
 70: 
 71:         Property j() As Integer
 72:           Get
 73:             Return _j
 74:           End Get
 75:           Set(ByVal value As Integer)
 76:             _j value
 77:           End Set
 78:         End Property
 79: 
 80:     End Class
 81: 
 82:     Public Sub New()
 83:       InitializeComponent()
 84: 
 85:       Dim xmldoc XDocument.Load("technologien.xml") 'XML-Dokument wurde dem Projekt hinzugefügt
 86:       Dim Source As List(Of Data) = New List(Of Data)
 87: 
 88:       For Each technologie In xmldoc.Descendants("technologie")
 89:         Source.Add(New Data() With _
 90:         {.technologie.Element("kurzbezeichnung"), _
 91:          .technologie.Element("bezeichnung"), _
 92:          .technologie.Element("herausgeber"), _
 93:          .technologie.Element("herausgeber").Attribute("jahr")})
 94:       Next
 95: 
 96:       dgrid.ItemsSource Source
 97:     End Sub
 98: 
 99:   End Class
100: 
101:   -->
102:   
103: 
104:   <!-- // zusätzlich verwendeter XML-Code in technologien.xml:
105: 
106:   <?xml version="1.0" encoding="UTF-8"?>
107:   <technologien>
108:     <technologie>
109:       <kurzbezeichnung>DocBook</kurzbezeichnung>
110:       <bezeichnung>DocBook</bezeichnung>
111:       <herausgeber jahr="1998">OASIS</herausgeber>
112:     </technologie>
113:     <technologie>
114:       <kurzbezeichnung>RSS</kurzbezeichnung>
115:       <bezeichnung>Really Simple Syndication</bezeichnung>
116:       <herausgeber jahr="1999">UserLand Software</herausgeber>
117:     </technologie>
118:     <technologie>
119:       <kurzbezeichnung>XSLT</kurzbezeichnung>
120:       <bezeichnung>Extensible Stylesheet Language Transformations</bezeichnung>
121:       <herausgeber jahr="1999">W3C</herausgeber>
122:     </technologie>
123:     <technologie>
124:       <kurzbezeichnung>XHTML</kurzbezeichnung>
125:       <bezeichnung>Extensible Hypertext Markup Language</bezeichnung>
126:       <herausgeber jahr="2000">W3C</herausgeber>
127:     </technologie>
128:     <technologie>
129:       <kurzbezeichnung>SVG</kurzbezeichnung>
130:       <bezeichnung>Scalable Vector Graphics</bezeichnung>
131:       <herausgeber jahr="2001">W3C</herausgeber>
132:     </technologie>
133:     <technologie>
134:       <kurzbezeichnung>MathML</kurzbezeichnung>
135:       <bezeichnung>Mathematical Markup Language</bezeichnung>
136:       <herausgeber jahr="2001">W3C</herausgeber>
137:     </technologie>
138:     <technologie>
139:       <kurzbezeichnung>X3D</kurzbezeichnung>
140:       <bezeichnung>Extensible 3D</bezeichnung>
141:       <herausgeber jahr="2004">ISO</herausgeber>
142:     </technologie>
143:     <technologie>
144:       <kurzbezeichnung>OpenDocument</kurzbezeichnung>
145:       <bezeichnung>Open Document Format for Office Applications</bezeichnung>
146:       <herausgeber jahr="2005">ISO</herausgeber>
147:     </technologie>
148:     <technologie>
149:       <kurzbezeichnung>DITA</kurzbezeichnung>
150:       <bezeichnung>Darwin Information Typing Architecture</bezeichnung>
151:       <herausgeber jahr="2005">OASIS</herausgeber>
152:     </technologie>
153:     <technologie>
154:       <kurzbezeichnung>OOXML</kurzbezeichnung>
155:       <bezeichnung>Office Open XML</bezeichnung>
156:       <herausgeber jahr="2006">ECMA [ISO 2008]</herausgeber>
157:     </technologie>
158:   </technologien>
159: 
160:   -->
161: 
162: </UserControl>

[zum Anfang]