WEB开发网
开发学院图形图像Flash Silverlight学习笔记一:DataGrid如何处理鼠标的滚... 阅读

Silverlight学习笔记一:DataGrid如何处理鼠标的滚轮事件

 2008-12-26 11:54:10 来源:WEB开发网   
核心提示: 2.DataGrid所在的窗体,上面放上一个DataGrid控件,Silverlight学习笔记一:DataGrid如何处理鼠标的滚轮事件(4),1publicpartialclassNorthWind:UserControl2{3//DataGrid的数据4privateList<

2.DataGrid所在的窗体,上面放上一个DataGrid控件。

1publicpartialclassNorthWind:UserControl
2 {
3     //DataGrid的数据
4     privateList<Products>_product;
5     //标示数据是否在DataGrid上
6     privateboolIsMouseInControl{get;set;}
7
8    publicNorthWind()
9     {
10       InitializeComponent();
11       //处理MouseWheel
12       MouseHelper.SetMouseWheelHandler(OnMouseWheel);
13       BindGrid();
14     }
15
16    privatevoidBindGrid()
17     {
18      //DataGrid绑定数据
19      //从WCF中获取Products数据,并保存到_product中。
20      //以下代码省略
21     }
22
23    publicvoidOnMouseWheel(objectsender,MouseWheelHandlerEventArgsargs)
24     {
25       //如果鼠标不在DataGrid上,就不做处理
26       if(!IsMouseInControl)return;
27       intmouseDelta=Math.Sign(args.Delta);
28       varselectedItem=dgData.SelectedIndex;
29       //每次向下滚动一条记录
30       varnextRow=selectedItem-(int)mouseDelta*1;
31       if(nextRow>-1&&nextRow<_product.Count)
32       {
33         dgData.ScrollIntoView(_product[nextRow],null);
34         dgData.SelectedIndex=nextRow;
35       }
36     }
37
38    privatevoiddgData_MouseEnter(objectsender,MouseEventArgse)
39     {
40       //鼠标进入DataGrid
41       IsMouseInControl=true;
42     }
43
44    privatevoiddgData_MouseLeave(objectsender,MouseEventArgse)
45     {
46       //鼠标离开DataGrid
47       IsMouseInControl=false;
48     }
49  }

ok,打完收工。

上一页  1 2 3 4 

Tags:Silverlight 学习 笔记

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接