WPF DataGrid 和LINQ to SQL示例程序之一 (提供源代碼下載)
WPF DataGrid 系列示例程序,由淺入深逐步介紹如何在WPF 應用程序中使用新的DataGrid 控件。本篇文章結合LINQ to SQL 演示在WPF DataGrid 中綁定數據。
WPF DataGrid 是Microsoft 近期發布的新控件,可以到如下地址下載DataGrid 控件:
http://www.codeplex.com/wpf
1. 創建LINQ to SQL 數據訪問項目,本示例程序采用EntLib.com Forum 開源論壇數據庫,可以到http://forum.entlib.com 下載。另外,也非常方便切換到其他數據庫。如下是創建的.dbml文件。
2. 下載 WPF DataGrid 安裝文件,然后進行安裝。可以從http://www.codeplex.com/wpf 下載。
3. 創建WPF DataGrid Demo程序,并從左側的Toolbox 拖曳DataGrid 控件到xaml 上。同時,設置DataGrid 的相關屬性如下:
??????? <my:DataGrid Margin="12,66,132,12" Name="dataGrid1" ItemsSource="{Binding}" AutoGenerateColumns="False" BorderThickness="1" HorizontalGridLinesBrush="Gainsboro" VerticalGridLinesBrush="Gainsboro">
??????????? <my:DataGrid.Columns>
??????????????? <my:DataGridTextColumn Header="TopicID" Binding="{Binding Path=TopicID}" />
??????????????? <my:DataGridTextColumn Header="主?題" Binding="{Binding Path=Topic}" />
??????????????? <my:DataGridTextColumn Header="發表時間" Binding="{Binding Path=Posted}" />
??????????? </my:DataGrid.Columns>
??????? </my:DataGrid>
你會發現WPF 應用程序自動引用WPFToolkit.dll 文件。示例項目的源代碼如下:
下載示例項目源代碼!?
4. 編寫代碼,綁定DataGrid的ItemsSource 屬性。
如下代碼將論壇的主題列表(topic)綁定到DataGrid 控件上。
??????? private void Grid_Loaded(object sender, RoutedEventArgs e)
??????? {
??????????? using (EntLibForumDataContext dc = new EntLibForumDataContext())
??????????? {
??????????????? dataGrid1.ItemsSource = dc.yaf_Topics.ToList();
??????????? }
??????? }
運行程序,如下是示例程序的演示界面:
?
Reference:
1. WPF DataGrid v1和WPFToolKit 發布
http://blog.entlib.com/entlibforum/archive/2008/11/01/wpf-datagrid-v1wpftoolkit.aspx
?
?