view 设置的事largeclon在未选定的情况下,鼠标放到索引2的位置,怎么把这个索引读出来。

解决方案 »

  1.   

    你没说是WPF,还是Winform还是asp.net
    下面是WPF的代码。private int GetCurrentIndex(GetPositionDelegate getPosition) 

        int index = -1; 
        for (int i = 0; i < clasesListView.Items.Count; ++i) 
        { 
            ListViewItem item = GetListViewItem(i); 
            if (this.IsMouseOverTarget(item, getPosition)) 
            { 
                index = i; 
                break; 
            } 
        } 
        return index; 

     
    private bool IsMouseOverTarget(Visual target, GetPositionDelegate getPosition) 

        Rect bounds = VisualTreeHelper.GetDescendantBounds(target); 
        Point mousePos = getPosition((IInputElement)target); 
        return bounds.Contains(mousePos); 

     
    delegate Point GetPositionDelegate(IInputElement element); 
     
    ListViewItem GetListViewItem(int index) 

        if (clasesListView.ItemContainerGenerator.Status != GeneratorStatus.ContainersGenerated) 
            return null; 
     
        return clasesListView.ItemContainerGenerator.ContainerFromIndex(index) as ListViewItem; 

      

  2.   

    这个应该是winform的参考:
    http://www.codeproject.com/KB/list/CSharpHitTest.aspx
      

  3.   

    listview1.SelectedIndex =1;
    ListView1.Items.Item[0].Selected