我很困惑。我试图设计这个列表视图的各种单元格,但结果很奇怪。我的代码来创建一个ListViewItem如下:不一致的listview子项属性
lvi = new ListViewItem();
lvi.Text = row["Size"].ToString();
lvi.SubItems.Add(row["Item"].ToString());
lvi.SubItems[0].Font = new System.Drawing.Font(lvi.Font, FontStyle.Underline);
lvi.SubItems[1].ForeColor = Color.Blue;
listAvailableSizes.Items.Add(lvi);
所以,理论上我的第一个子项目应该强调的,我的第二个应该是蓝色的(这只是随意的风格)。而眼前的窗口确认,这应该是这样:
listAvailableSizes.Items[0].SubItems[0].ForeColor
"{Name=WindowText, ARGB=(255, 0, 0, 0)}"
A: 255
B: 0
G: 0
IsEmpty: false
IsKnownColor: true
IsNamedColor: true
IsSystemColor: true
Name: "WindowText"
R: 0
listAvailableSizes.Items[0].SubItems[1].ForeColor
"{Name=Blue, ARGB=(255, 0, 0, 255)}"
A: 255
B: 255
G: 0
IsEmpty: false
IsKnownColor: true
IsNamedColor: true
IsSystemColor: false
Name: "Blue"
R: 0
listAvailableSizes.Items[0].SubItems[0].Font.Underline
true
listAvailableSizes.Items[0].SubItems[1].Font.Underline
false
据此,分项目位置0有定期的彩色文本和下划线,1位有蓝色的文字和无下划线,但是,这是它如何显示:
正如你可以看到两者都强调也不为蓝色。我错过了什么吗?
真棒,谢谢你,我正要进入Boo提到的自定义绘图,我并不想花时间去做。 – Nick 2011-04-08 12:14:50