官方的 ListView.Table 示例二十二 “精确控制行的拖动行为”
Dim lvw1 As WinForm.ListView = e.Form.Controls("ListView1") '员工列表
Dim lvw2 As WinForm.ListView = e.Form.Controls("ListView2") '活动一参与者列表
Dim lvw3 As WinForm.ListView = e.Form.Controls("ListView3") '活动二参与者列表
Dim lvws() As Winform.ListView =
{lvw1,lvw2,lvw3}
'看看我们是怎样批量设置某组控件属性的
For Each lvw As WinForm.ListView In
lvws
lvw.View = ViewMode.List
lvw.AllowDrag = True
lvw.AllowDrop = True
lvw.Images.AddSmallImage("Man", "Man.ico")
'添加代表男性的一对图标
lvw.Images.AddSmallImage("Woman", "Woman.ico") '添加代表女性的一对图标
Next
For Each
dr As DataRow In DataTables("员工").Select("","性别") '列出所有员工
Dim vr As WinForm.ListViewRow = lvw1.Rows.Add()
vr.Text = dr("姓名")
vr.Name =
dr("姓名")
'将ListViewRow的Name属性设置为员工姓名
If
dr("性别") =
"男" Then
vr.ImageKey =
"Man"
Else
vr.ImageKey =
"Woman"
End If
Next
Dim
nms() As String = DataTables("活动").DataRows(0)("参与者").Split(",") '列出活动一参与者
For Each
nm
As String In nms
If nm > "" Then
Dim
vr
As WinForm.ListViewRow = lvw2.Rows.Add()
vr.Text = nm
vr.Name = nm
vr.ImageKey = lvw1.Rows(nm).ImageKey '从员工列表(ListView1)获取此员工的图标键值
End
If
Next
nms = DataTables("活动").DataRows(1)("参与者").Split(",") '列出活动二参与者
For Each
nm
As String In nms
If nm > "" Then
Dim
vr
As WinForm.ListViewRow = lvw3.Rows.Add()
vr.Text = nm
vr.Name = nm
vr.ImageKey = lvw1.Rows(nm).ImageKey '从员工列表(ListView1)获取此员工的图标键值
End
If
Next
红色区域的设置 是 针对 男女性别的 生成列表行图片键值 这个好理解
但是我现在想 员工列表不是有 一列 图片列 吗 代表每个员工的图像
现在问题来了 如何实现这种 图片列 设置为 ImageKey
代码反复修改,总是错误 , 拖动员工 名字显示 但是头像不显示
哦 对了 官方的 vr.Name = nm 设置为姓名 我觉得不妥 一个大的员工体系里面 应该有重复姓名的
我初设了 员工 工号 这个列 可以是唯一的
如何实现上面这段代码 各位大大 谢谢