作者:莪啝伱在一敧 | 来源:互联网 | 2023-07-21 15:01
2014年3月4日星期二北京海淀五路居晴这个界面貌似太单调了一点:1.多选,没有2.编辑,没有3.
这个界面貌似太单调了一点:
1. 多选,没有
2. 编辑,没有
3. 删除,没有
4. 增加,没有
5. 网格,没有
一.实现表格线的方法:
//使用的时候直接调用静态方法SetGridLines(ListViewlvw),即可,该类是百度出来的,汗一个
Public class DrawGridLineForListView {
private const int LVM_GETEXTENDEDLISTVIEWSTYLE = 0x1037;
private const int LVM_SETEXTENDEDLISTVIEWSTYLE = 0x1036;
private const int LVS_EX_GRIDLINES = 0x1;
[System.Runtime.InteropServices.DllImport("coredll.dll")]
private static extern int SendMessageW(int hWnd, int wMsg, int wParam, int lParam);
[System.Runtime.InteropServices.DllImport("coredll.dll")]
private static extern int GetFocus();
public static void SetGridLines(System.Windows.Forms.ListView lvw)
{
lvw.Focus();
int hWnd = GetFocus();
int extendedStyle = SendMessageW(hWnd, LVM_GETEXTENDEDLISTVIEWSTYLE, 0, 0);
extendedStyle |= LVS_EX_GRIDLINES;
SendMessageW(hWnd, LVM_SETEXTENDEDLISTVIEWSTYLE, 0, extendedStyle);
}
}
调用了静态方法之后,效果是有的:
二.弹出菜单:
//1.在ItemCheck()方法下,绑定一个上下文菜单这样
//用鼠标(或者触屏笔)长按,即可弹出一个上下文菜单,增,删,改,都可做了
//注:使用上下文菜单ContextMenu控件时,要将该控件绑定到ListView的
//ContextMenu属性,不然估计是出不来的
//2.ListView的CheckBoxes属性设置为True,显示复选框实现多选
private voidlvMaterialIDView_ItemCheck(object sender, ItemCheckEventArgs e)
{
lvMaterialIDView.ContextMenu.Show(lvMaterialIDView, MousePosition);
}
效果如下:
到此,ListView包装结束,虽然不是一个合格的经纪人,姑且也就这样了。