//以避免当result值为1时出错 int result=dgrd.Items.Count%dgrd.PageSize; if (result==1) { dgrd.CurrentPageIndex = (dgrd.PageCount - 2); }
首先,你需要知道在最后一页上有多少数据项。为此,需要对Item Count和Page Size使用Mod(取模)运算符。由于Mod运算符返回的只是余数,所以绝对不会有任何多余的数据需要处理。如果页上只余一项,那么占位符变量Result就等于1。
由于DataGrid的CurrentPageIndex属性是一个从0开始的索引,而PageCount属性从1开始,所以必须从页计数上减2(而不是1),才能在删除之后回退一页。