我的wpf页面中有一个DataGrid。如何为此数据网格添加分页? 我使用LinqToSql类从数据库中获取数据。
我将数据绑定到datagrid,如关注
var supplier = (from p in cd.suppliers
select p).Take(10);
MyDataGrid.ItemsSource = supplier;
此表格列是 - > SUP_ID,Sup_Name,PHONE_NUM,电邮,说明,地址
这是我的xaml
<Grid Height="500" VerticalAlignment="Top">
<DataGrid x:Name="MyDataGrid" x:Uid="MyDataGrid" AutoGenerateColumns="False"
AlternationCount="2" SelectionMode="Single" Margin="0,47,0,0">
<DataGrid.Columns>
<DataGridTextColumn Binding="{Binding Path=Sup_Id}" IsReadOnly="True"
Header="Supplier ID" Width="150" />
<DataGridTextColumn Binding="{Binding Path=Sup_Name}"
Header="Suppier Name" Width="200" />
<DataGridTextColumn Binding="{Binding Path=Phone_Num}"
Header="Mobile" Width="190" />
<DataGridTextColumn Binding="{Binding Path=Email}"
Header="Email" Width="230" />
<DataGridTextColumn Binding="{Binding Path=Address}"
Header="Address" Width="250" />
</DataGrid.Columns>
</DataGrid>
<StackPanel Margin="464,500,464,-51" Orientation="Horizontal" HorizontalAlignment="Center">
<Button Margin="4,0" Content="back" Click="back_click"/>
<Button Margin="4,0" Content="next" Click="next_click"/>
</StackPanel>
</Grid>
答案 0 :(得分:1)
您可以添加dataPager:
<datagrid>Your dataGrid</datagrid>
<sdk:DataPager Name="dataPager"
DisplayMode="FirstLastPreviousNext"
HorizontalContentAlignment="Left"
HorizontalAlignment="Left"
PageSize="15"/>
PageSize是每页所需的行数。
在后面的代码中:
var supplier = (from p in cd.suppliers
select p);
MyDataGrid.ItemsSource = supplier;
dataPager.Source = supplier;
在这里,您必须加载所需的所有数据。 dataPager将完成这项工作。
如果您拨打30行,则会有2个页面。
您可以限制拍摄的数量,但对于分页则无用。
编辑:误读了您的问题:您使用的是WPF而不是Silverlight,请尝试以下链接:http://social.msdn.microsoft.com/Forums/vstudio/en-US/6f43b225-7a23-4f16-bff8-cdbb5864038b/wpf-datapager?forum=wpf