"ListBox和ListView之间的区别是什么?"

10 浏览
0 Comments

"ListBox和ListView之间的区别是什么?"

WPF的ListBox和ListView之间有什么区别?我在它们的属性中找不到任何显着的差别。它们的典型用途有所不同吗?

admin 更改状态以发布 2023年5月23日
0
0 Comments

ListView 允许您为其定义一组视图,并通过使用已定义的视图为您提供本地方式 (WPF binding 支持) 来控制 ListView 的显示。

示例:

XAML


        
            
                
                    
                        
                            
                        
                    
                
                
                    
                        
                            
                        
                    
                
            
                                
                
                    
                        
                            
                        
                    
                
            
        
        
            
          

Code Behind:

private int viewType;
public int ViewType
{
    get { return viewType; }
    set 
    { 
        viewType = value;
        UpdateProperty("ViewType");
    }
}        
private void listv_MouseEnter(object sender, MouseEventArgs e)
{
    ViewType = 1;
}
private void listv_MouseLeave(object sender, MouseEventArgs e)
{
    ViewType = 2;
}

输出:

正常视图:上述 XAML 中的 View 2

Normal

鼠标悬停视图:上述 XAML 中的 View 1

Mouse Over

如果您尝试在 ListBox 中实现以上内容,可能需要编写更多的 ControlTemplate/ItemTemplate 代码。

0
0 Comments

ListView基本上类似于ListBox(并继承自它),但它还具有一个View属性。此属性允许您指定一种预定义的显示项的方式。在BCL(Base Class Library)中唯一的预定义视图是GridView,但您可以很容易地创建自己的视图

另一个不同之处是默认选择模式:对于ListBox,它是Single,但对于ListView,它是Extended

0