listview改变行内容!
如何动态改变每一行的内容,颜色字体,文字内容!
谢谢!asp.net

解决方案 »

  1.   

    http://blog.csdn.net/lsd123/archive/2009/03/19/4004333.aspx
    这个你可以参考一下。
      

  2.   

    可以利用以下事件:
    OnAdvancedCustomDraw
    OnAdvancedCustomDrawItem
    OnAdvancedCustomDrawSubItem
    OnCustomDraw
    OnCustomDrawItem
    OnCustomDrawSubItem
    自已任意画
      

  3.   

    问题补充:
          我说的是ASP.net  WInForM程序不是BS程序呵呵  谢谢!
      

  4.   

    OnCustomDrawItem 
    重画程序。
      

  5.   


    private void listView1_DrawSubItem(object sender, DrawListViewSubItemEventArgs e)
            {
                e.DrawBackground();
                //判断Subitem中是否存在关键字            e.SubItem.BackColor = Color.Pink;  //设置背景色为粉红色
                e.DrawText();
            }        private void Form1_Load(object sender, EventArgs e)
            {
                listView1.Items.Add("asssdf");
                listView1.Items.Add("asssdf2");
                listView1.Items.Add("asssdf3");
            }        private void listView1_DrawColumnHeader(object sender, DrawListViewColumnHeaderEventArgs e)
            {
                e.DrawBackground();
                e.DrawText();
            }
      

  6.   

    记得把listview1的OwnerDraw属性设置为True
      

  7.   

    private void listView1_DrawColumnHeader(object  sender,DrawListViewColumnHeaderEventArgs e)
            {
                e.DrawBackground();
                e.DrawText();
            }
     private void listView1_DrawSubItem(object sender, DrawListViewSubItemEventArgs e)
          {
            e.DrawBackground();
             if(txt.Text.Trim().Length > 0&& e.SubItem.Text.IndexOf(txt.Text.Trim())>= 0)
                {
                    e.SubItem.BackColor = Color.Red;  
                 }
                else
                {
                    e.SubItem.ForeColor = Color.Black; 
                }
                e.DrawText();
            }或设置ListSubItems.ForeColor