C#中WPF ListView绑定数据的实例详解

 更新时间:2017年10月05日 10:55:31   作者:晨曦888  
这篇文章主要介绍了C#中WPF ListView绑定数据的实例详解的相关资料,希望通过本文能帮助到大家,让大家理解掌握这部分内容,需要的朋友可以参考下

C#中WPF ListView绑定数据的实例详解

WPF中ListView用来显示数据十分方便, 我们可以将它分成几个列,每一个列用来显示一条数据,但是又是在一方之中。

那么怎样实现这样的效果的呢,这就要用绑定了。

我们先来看一看他的xmal代码

<ListView Name="receiveList" Grid.Row="0"> 
            <ListView.View> 
              <GridView> 
                <GridView.Columns> 
                <GridViewColumn Header="发件人" 
                Width="200" 
                DisplayMemberBinding="{Binding Path=Senderuser}" /> 
                <GridViewColumn Header="主题" 
                Width="350" 
                DisplayMemberBinding="{Binding Path=Topic}" /> 
                <GridViewColumn Header="附件" DisplayMemberBinding="{Binding Path=Ffile}" 
                Width="200" /> 
                <GridViewColumn Header="时间" Width="150" DisplayMemberBinding="{Binding Path=Time}"/> 
               </GridView.Columns> 
              </GridView> 
            </ListView.View> 
          </ListView> 

上面的代码中每一个GridViewColumn都有一个绑定{Bind Path=作为绑定源的类中的成员属性}

下面来看一下绑定的类

using System; 
using System.Collections.Generic; 
using System.ComponentModel; 
using System.Linq; 
using System.Text; 
using System.Threading.Tasks; 
 
namespace EmailClient 
{ 
  class MailList : INotifyPropertyChanged 
  { 
    public string senduser; 
    public string topic; 
    public string file; 
    public string time; 
    public event PropertyChangedEventHandler PropertyChanged; 
    public string Senderuser 
    { 
      get  
      { 
        return senduser; 
      } 
      set  
      { 
        senduser = value; 
        if (this.PropertyChanged != null)//激发事件,参数为Age属性  
        { 
          this.PropertyChanged.Invoke(this, new PropertyChangedEventArgs("Age")); 
        }  
      } 
    } 
 
    public string Topic  
    { 
      get  
      { 
        return topic; 
      } 
      set  
      { 
        topic = value; 
        if (this.PropertyChanged != null)//激发事件,参数为Age属性  
        { 
          this.PropertyChanged.Invoke(this, new PropertyChangedEventArgs("Age")); 
        }  
      } 
    } 
 
    public string Ffile 
    { 
      get  
      { 
        return file; 
      } 
      set  
      { 
        file = value; 
        if (this.PropertyChanged != null)//激发事件,参数为Age属性  
        { 
          this.PropertyChanged.Invoke(this, new PropertyChangedEventArgs("Age")); 
        } 
      } 
    } 
 
    public string Time  
    { 
      get  
      { 
        return time; 
      } 
      set  
      { 
        time = value; 
        if (this.PropertyChanged != null)//激发事件,参数为Age属性  
        { 
          this.PropertyChanged.Invoke(this, new PropertyChangedEventArgs("Age")); 
        } 
      } 
    } 
 
    public MailList() { } 
    public MailList(string senduser,string topic,string file,string time) 
    { 
      this.senduser = senduser; 
      this.topic = topic; 
      this.file = file; 
      this.time = time; 
    } 
  } 
} 

现在我们可以看到我们刚才绑定的属性就在这个类中,那么该怎样应用呢

下面来看一下我的应用代码

private List<MailList> maillist; 
maillist = new List<MailList>(); 

以上的代码是声明一个list来保存我们插入的数据的,由于我的源代码是从服务器中得到的邮件列表。

maillist.Add(new MailList("xxxxxx", "xxxxxxxx", "xxxxxx", "xxxxxx"));  
receiveList.ItemsSource = maillist; 

如果这样写那么那么上面的途中得到的就是xxxxxx了。

那么绑定就是这样了。

如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

相关文章

  • Oracle中for循环的使用方法

    Oracle中for循环的使用方法

    这篇文章介绍了Oracle中for循环的使用方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-08-08
  • C#使用二分查找法判断指定字符的方法

    C#使用二分查找法判断指定字符的方法

    这篇文章主要介绍了C#使用二分查找法判断指定字符的方法,结合实例形式分析了C#二分查找法进行字符串查找的定义与使用技巧,需要的朋友可以参考下
    2016-06-06
  • C#实现扫雷游戏

    C#实现扫雷游戏

    这篇文章主要为大家详细介绍了C#实现扫雷游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-06-06
  • C#借助OpenCvSharp读取摄像头并显示的实现示例

    C#借助OpenCvSharp读取摄像头并显示的实现示例

    OpenCvSharp是一个OpenCV的.Net wrapper,应用最新的OpenCV库开发,本文主要介绍了C#借助OpenCvSharp读取摄像头并显示的实现示例,具有一定的参考价值,感兴趣的可以了解一下
    2022-05-05
  • C# 如何在WINForm程序中创建XML文件

    C# 如何在WINForm程序中创建XML文件

    这篇文章主要介绍了C# 如何在WINForm程序中创建XML文件,帮助大家更好的理解和学习使用c#,感兴趣的朋友可以了解下
    2021-02-02
  • C#操作注册表之Registry类

    C#操作注册表之Registry类

    这篇文章介绍了C#操作注册表之Registry类,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-05-05
  • C#实现将汉字转化为2位大写的16进制Unicode的方法

    C#实现将汉字转化为2位大写的16进制Unicode的方法

    这篇文章主要介绍了C#实现将汉字转化为2位大写的16进制Unicode的方法,分析了转换的技巧并以实例形式给出了具体的转换方法,非常具有实用价值,需要的朋友可以参考下
    2014-12-12
  • C# Bitmap图像处理(含增强对比度的三种方法)

    C# Bitmap图像处理(含增强对比度的三种方法)

    本文主要介绍了C# Bitmap图像处理(含增强对比度的三种方法),文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-11-11
  • c#使用wmi查询usb设备信息示例

    c#使用wmi查询usb设备信息示例

    这篇文章主要介绍了c#使用wmi查询usb设备信息示例,大家参考使用吧
    2014-01-01
  • c# rsa注册实现加密文字

    c# rsa注册实现加密文字

    这篇文章主要介绍了c# rsa注册实现加密文字,需要的朋友可以参考下
    2014-04-04

最新评论