Windows Mobile 6.5 的蜂窝菜单如果要自定义排序非常麻烦,需要设置移动到顶部或者修改注册表中的 Rank 值的大小来排序,两种方法都不能方便的排列为自己想要的顺序,于是就自己写一个程序来修改注册表,这样就可以直观一些。
程序主要是修改注册表中 HKEY_LOCAL_MACHINE\Security\Shell\StartInfo\Start\ 下面项目中的 Rank 值,首先把注册表中的项目读出来放到一个 DataTable 中,然后排序后再绑定到 ListBox 中,最后通过交换选中项目和要移动的目标项中的 Rank 值来达到排序的目的。
把注册表读到 DataTable 中
Function GetReg()Function GetReg() As DataView Dim regKey As RegistryKey = Registry.LocalMachine.OpenSubKey("Security\Shell\StartInfo\Start")
If regKey Is Nothing Then
Exit Function
End If
Dim dt As New DataTable("Menu")
dt.Columns.Add("Name", System.Type.GetType("System.String"))
dt.Columns.Add("Rank", System.Type.GetType("System.Int64"))
dt.Columns.Add("Favorite", System.Type.GetType("System.Boolean"))
dt.Columns.Add("FavoriteOrder", System.Type.GetType("System.Object"))
For Each key As String In regKey.GetSubKeyNames
Dim file As String = System.Environment.GetFolderPath(System.Environment.SpecialFolder.StartMenu) & "\程序\" & key
If Not key.EndsWith(".lnk") OrElse IO.File.Exists(file) Then
Dim rk As RegistryKey = Registry.LocalMachine.OpenSubKey("Security\Shell\StartInfo\Start\" & key)
Dim Rank As Long = rk.GetValue("Rank")
Dim Favorite As Boolean = rk.GetValue("Favorite")
Dim FavoriteOrder As Byte() = rk.GetValue("FavoriteOrder")
Dim row As DataRow = dt.NewRow
row("Name") = key
row("Rank") = Rank
row("Favorite") = Favorite
row("FavoriteOrder") = FavoriteOrder
dt.Rows.Add(row)
End If
Next
Dim dv As New DataView
dv.Table = dt
dv.Sort = "Favorite DESC, FavoriteOrder DESC, Rank DESC, Name ASC"
Return dv
End Function
对项目进行排序
![ContractedBlock.gif](http://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif)
![ExpandedBlockStart.gif](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
<!--
Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/
-->
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/21255398/viewspace-604874/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/21255398/viewspace-604874/