在SelectIndexChanged事件里,将当前选中的ListViewItem的背景颜色改变成你要的颜色,然后代码取消选中行

解决方案 »

  1.   

    通过分析,现在实现了单击listview行的时候不会出现高亮显示,但是还是会出现一个白色的框,我需要这个白色的框在点击的时候也不要出现。也就是把listview的每一行作为label用。
      

  2.   

    gxingmin 你说的那个我那样做了 但是还是会出现带白色的框 图我上传了
      

  3.   

    bdmh  你没有懂我想要实现的效果 楼上的图是我目前达到的效果,我通过在选中行的事件中取消了listview的所有选中行,那个高亮现在不显示了 但是出现那个带白色的矩形框  我需要的是把这个矩形框也给取消  也就是相当于listview不能聚焦,但是如果把enable设置为false的话 那么listview本身的背景颜色就只能是默认的control 不能修改。
      

  4.   

    gxingmin 
    你说的转移焦点我也试过了 我在SelectedIndexChanged(object sender, EventArgs e)这里面先是取消了选中行,然后代码使得别的空间得到焦点,但是还是会出现那个白色的矩形框,不管是我先让别的控件得到焦点再取消选中行还是先取消选中行再让别的控件得到焦点,那个白色的矩形框还是会出现。
      

  5.   

    先失效,然后再有效试试
    ListView1.Enabled=false;
    ListView1.Enabled=true;

    ListView1.Refresh();
      

  6.   

    gxingmin 
      你后面说的这个方法我没有试,不过我已经找到了一个方法,这个方法是这样的     很简单的   就是在istview得到焦点的时候就失去焦点  这样就达到我了我想到的效果。
      

  7.   

    试试
    ListView1.HideSelection = true;