我正在将数据添加到一个数据类型的System.Windows.ListViewItem.Subitems
集合中。ListViewItem.ListViewSubItemCollection
我知道添加到数据集合中的项目没有关联的顺序。因此,以任意顺序用数据填充集合对您的数据存储没有影响。(编辑:我现在知道集合与数据无序的集合不同)。
如何控制我的集合中的每个数据被分配/显示的列?截至目前,我的数据正在显示,但是,它似乎是任意分配的。
数据的显示方式有一些顺序,但它有点跳跃......
public LogMessageItem ( LoggerItem parent, LogMessage logMsg )
{
Parent = parent;
Message = logMsg;
string parentName = Parent.Name;
if( (Parent.Name == logMsg.ThreadName) && (Parent.Parent != null) )
parentName = Parent.Parent.Name;
Item = new ListViewItem ( logMsg.TimeStamp.ToString ( UserSettings.Instance.TimeStampFormatString ) ); // Create List View Item
Item.SubItems.Add ( logMsg.Level.Name ); // Appears in column 0
Item.SubItems.Add ( parentName ); // value is null
Item.SubItems.Add ( logMsg.ThreadName ); // Appears in column 6
string msg = logMsg.Message.Replace ( "\r\n", " " );
msg = msg.Replace ( "\n", " " );
Item.SubItems.Add ( msg ); // Appears in column 7
Item.ToolTipText = msg;
Item.ForeColor = logMsg.Level.Color;
Item.Tag = this;
}
也许根据列标题的初始化方式,输入数据的方式有一个首选的顺序?
上面示例中的数据正在正确显示,但是当我编辑它时,我希望填充第 8 列及以后的列。在包含Item.Tag = this;
. 它的作用是开始将数据添加到第 3、4、5、8、9、10、11、12、13、14 列等等......