解决方案 »

  1.   

    这个很简单。你没弄明白一件事情,你所谓的最后一列其实不是一列,而是列宽过窄无法填充满Listview所导致的空白。
    所以你只要设置好所有列的列宽(用*这样百分比布局),或者缩短Listview的宽度就可以了。
      

  2.   


    <ListView Width="210" Margin="10">
                <ListView.View>
                    <GridView>
                        <GridView.Columns>
                            <GridViewColumn Header="column1" Width="70" DisplayMemberBinding="{Binding 你的字段}">
                            </GridViewColumn>
                            <GridViewColumn Header="column1" Width="70">
                            </GridViewColumn>
                            <GridViewColumn Header="column1" Width="70">
                            </GridViewColumn>
                        </GridView.Columns>
                    </GridView>
                </ListView.View>
            </ListView>
      

  3.   

    我想你们没有明白我的意思,这个与ListView列宽无关,例如系统的那个ListView,点击最右边会出现列表选项,但是点击ListviewItem,出现的是空白处菜单,空白处未被选中。
      

  4.   

    5楼那个,把ListviewItem往左收缩,效果一样,空白处照样出来,其实有没有空白处无所谓,我要的效果是空白处别被选中就行。
      

  5.   

    你只是在控件生成的时候刚好将所有列的宽加起来等于Listview定义的宽,但是列,用户是可以拖动的,列宽可以改变大小的,当列宽变小,Listview宽度没变,多余出来的部分,仍然会被选中,很难看,所以我想让那部分不被选中。
      

  6.   

     把最后一列的宽度设为自动的就可以了 with=“*”
      

  7.   

            诸位不好意思,那几天脾气不太好,但是对于在帖子里骂人的,我还是表示不满。同时,我对我自己骂人表示道歉。
            经过自己摸索,问题已经解决。
            思路:将ListView定义为100(假设,后续数据都是随便取得)
            然后重新定义一个ListViewItem样式,在属性设置上<Setter Property="Width" Value="80"/>(value小于100即可,具体看情况)
            这样就可以达到效果,具体看个人情况修改ListViewItem的Width属性。
      

  8.   

    13 楼是来搞笑的吧,哈哈哈。试都没试!跟楼主遇到了类似的问题:
    1: 如果使用width=“*” 可以解决即使点击空白处也可以选择相应的行的问题,但是如果选择"*",就必须定义minwidth 为了让当datagrid 变小到一定时候能够显示水平拉动条。结果就是你所有定义了minwidth 的列全部都会保留在datagrid 里面,当你缩小窗口,达到了minwidth 的极限值而某列由于窗口缩小,无法全部浏览该列内容的时候,又不能拖动列让其他的列给出可以浏览的空间。2:如果使用width="Auto" 可以避免设置minwidth,这样避免的以上的问题,但是这样当你屏幕的分辨率改变的时候,可能就会流出空白,而在空白处又无法接受鼠标的点击来选择该行。不知哪位有方法解决,多谢了!