1.向窗体中添加组件里的ImageList
2.将ListView的 SmallImageList属性设置为刚才添加的ImageList id
3.调整ImageList的高度(Height)
1
public
ListView getMailsFromLocal(Int16 pos,
ref
ListView lv)
2 {
3 try
4 {
5 res.Close();
6 }
7 catch (Exception)
8 { }
9 res.Open();
10 SQLiteCommand cmd = new SQLiteCommand();
11 cmd.Connection = res;
12 cmd.CommandText = String.Format("SELECT [type],[fromU],[title],[isReply],[attachs],[saveTime],[uid],[id],[isRead] FROM [mails] WHERE [type]={0} ;", pos);
13 SQLiteDataAdapter sda = new SQLiteDataAdapter(cmd);
14 DataSet ds = new DataSet();
15 sda.Fill(ds, "MMM");
16
17 lv.Items.Clear();
18 if (ds.Tables["MMM"].Rows.Count <= 0)
19 {
20 //MessageBox.Show("没有该种类型的记录!");
21 res.Close();
22 return lv;
23 }
24 //[orders],[fromU],[title],[isReply],[attachs],[type],[saveTime],[uid], [id],[isRead]
25
26 SQLiteDataReader sdr = cmd.ExecuteReader();
27 ListViewItem lvi;
28 bool isRead = false;
29 while(sdr.Read())
30 {
31 lvi = new ListViewItem(sdr.GetInt32(7).ToString());
32 lvi.SubItems.Add(sdr.IsDBNull(0) ? "" : this.parserType(sdr.GetInt16(0)));//邮箱分类类型
33 lvi.SubItems.Add(sdr.IsDBNull(1)?"佚名":sdr.GetString(1));//发件人
34 lvi.SubItems.Add(sdr.IsDBNull(2)?"无标题":sdr.GetString(2));//邮件标题
35 lvi.SubItems.Add(sdr.IsDBNull(3)?"":(sdr.GetInt16(3)==0?"否":"是"));//是否回复
36 lvi.SubItems.Add(sdr.IsDBNull(4)?"":(sdr.GetString(4).Length<=1?"无":"有"));//有无附件
37 lvi.SubItems.Add(sdr.IsDBNull(5) ? "" : sdr.GetString(5));//存储时间
38 lvi.SubItems.Add(sdr.IsDBNull(6) ? "" : sdr.GetString(6));//服务器唯一标识
39 isRead = sdr.IsDBNull(8) ? false : (Convert.ToInt16(sdr.GetValue(8))==1?false:true);//是否已读
40 if(isRead==true)
41 {//如果没有读,则加黑
42 lvi.Font = new Font("宋体", 10,FontStyle.Bold);
43 }
44 lv.Items.Add(lvi);
45 }
46 res.Close();
47 return lv;
48 }
49
2 {
3 try
4 {
5 res.Close();
6 }
7 catch (Exception)
8 { }
9 res.Open();
10 SQLiteCommand cmd = new SQLiteCommand();
11 cmd.Connection = res;
12 cmd.CommandText = String.Format("SELECT [type],[fromU],[title],[isReply],[attachs],[saveTime],[uid],[id],[isRead] FROM [mails] WHERE [type]={0} ;", pos);
13 SQLiteDataAdapter sda = new SQLiteDataAdapter(cmd);
14 DataSet ds = new DataSet();
15 sda.Fill(ds, "MMM");
16
17 lv.Items.Clear();
18 if (ds.Tables["MMM"].Rows.Count <= 0)
19 {
20 //MessageBox.Show("没有该种类型的记录!");
21 res.Close();
22 return lv;
23 }
24 //[orders],[fromU],[title],[isReply],[attachs],[type],[saveTime],[uid], [id],[isRead]
25
26 SQLiteDataReader sdr = cmd.ExecuteReader();
27 ListViewItem lvi;
28 bool isRead = false;
29 while(sdr.Read())
30 {
31 lvi = new ListViewItem(sdr.GetInt32(7).ToString());
32 lvi.SubItems.Add(sdr.IsDBNull(0) ? "" : this.parserType(sdr.GetInt16(0)));//邮箱分类类型
33 lvi.SubItems.Add(sdr.IsDBNull(1)?"佚名":sdr.GetString(1));//发件人
34 lvi.SubItems.Add(sdr.IsDBNull(2)?"无标题":sdr.GetString(2));//邮件标题
35 lvi.SubItems.Add(sdr.IsDBNull(3)?"":(sdr.GetInt16(3)==0?"否":"是"));//是否回复
36 lvi.SubItems.Add(sdr.IsDBNull(4)?"":(sdr.GetString(4).Length<=1?"无":"有"));//有无附件
37 lvi.SubItems.Add(sdr.IsDBNull(5) ? "" : sdr.GetString(5));//存储时间
38 lvi.SubItems.Add(sdr.IsDBNull(6) ? "" : sdr.GetString(6));//服务器唯一标识
39 isRead = sdr.IsDBNull(8) ? false : (Convert.ToInt16(sdr.GetValue(8))==1?false:true);//是否已读
40 if(isRead==true)
41 {//如果没有读,则加黑
42 lvi.Font = new Font("宋体", 10,FontStyle.Bold);
43 }
44 lv.Items.Add(lvi);
45 }
46 res.Close();
47 return lv;
48 }
49