我想要做的是:我想在列表视图中填充一些前景颜色就像这样
示例:
en_us
这是我的代码:
> ColumnHeader1 ColumnHeader2 ColumnHeader3
> Executive(W/Forecolor) texttexttext texttexttexttext
> Employee(Plain w/out FC) texttexttext texttexttexttext
答案 0 :(得分:0)
首先应该担心的是代码的Sql Injection问题。不要使用字符串连接来构建查询文本,但始终使用参数化文本。不仅你的命令更清楚,而且黑客也无法篡改你的文本以破坏你的数据库。
二。您可以通过在两个表之间执行连接来提供有关您的评论作者级别的信息。两个表中的字段Staff_IDNo将备注中的记录链接到表中,其中包含有关备注作者级别的信息
最后,ListViewItem(ListView.Items.Add返回的对象)支持ForeColor属性,您只需在向列表视图添加项目时逐行设置颜色
Dim loadChat As New SqlCommand("SELECT r.*, s.AccessLVL FROM RemarksConvo r
JOIN StaffMember s ON s.Staff_IDNo = r.Staff_IDNo
WHERE r.Application_ID = @appId
AND r.Room = @room", jonsqlcon)
loadChat.Parameters.Add("@appId", SqlDbType.NVarChar).Value = ClientAccountStatusViewer.txtClientID.Text
loadChat.Parameters.Add("@room", SqlDbType.NVarChar).Value = lvlStorage.Text)
reader = loadChat.ExecuteReader
ListView1.Items.Clear()
Do While reader.Read
list = ListView1.Items.Add(reader(3).ToString)
list.ForeColor = If(reader("AccessLvl").ToString = "2", Color.Acqua, SystemColors.WindowText)
list.SubItems.Add(reader(4).ToString)
list.SubItems.Add(reader(5).ToString)
list.SubItems.Add(reader(6).ToString)
Loop