XAML:

        <!--#region 数据绑定控件-->
<DataGrid x:Name="dataGrid" Grid.Column="2" Grid.ColumnSpan="4" AutoGenerateColumns="False">
<DataGrid.Columns>
<DataGridTextColumn Header="编号" Width="*" Binding="{Binding Id}"></DataGridTextColumn>
<DataGridTextColumn Header="名称" Width="*" Binding="{Binding Name}"></DataGridTextColumn>
<DataGridTextColumn Header="时间" Width="*" Binding="{Binding CreateTime}"></DataGridTextColumn>
</DataGrid.Columns>
</DataGrid>
<!--#endregion-->

后台隐藏代码:

 public partial class AllControl : Window
{ List<Users> usl = new List<Users>(); public AllControl()
{
usl.Add(new Users
{
Id = ,
Name = "maoyang",
CreateTime = DateTime.Now,
});
usl.Add(new Users
{
Id = ,
Name = "zhangfan",
CreateTime = Convert.ToDateTime("2018/7/30 8:30:00"),
});
usl.Add(new Users
{
Id = ,
Name = "kejing",
CreateTime = Convert.ToDateTime("2018/7/30 9:00:00"),
});
InitializeComponent();
} private void button1_Click(object sender, RoutedEventArgs e)
{
this.dataGrid.ItemsSource = usl;
} } public class Users
{
public int Id { get; set; }
public string Name { get; set; }
public DateTime CreateTime { get; set; }
}

此时如果修改字段,UI界面数据不能实时更新,需要以下修改:

1:把类继承INotifyPropertyChanged这个接口,并实现接口,然后添加定义OnPropertyChanged方法

 public class Users : INotifyPropertyChanged
{
private int id;
private string name;
private DateTime createTime; public int Id
{
get
{
return id;
} set
{
id = value;
OnPropertyChanged("Id");
}
} public string Name
{
get
{
return name;
} set
{
name = value;
OnPropertyChanged("Name");
}
} public DateTime CreateTime
{
get
{
return createTime;
} set
{
createTime = value;
OnPropertyChanged("CreateTime");
}
} public event PropertyChangedEventHandler PropertyChanged;
protected void OnPropertyChanged(string propertyName)
{
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
}
}

写一个修改列表中的字段事件:

     /// <summary>
/// 点击更改按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void Update_Click(object sender, RoutedEventArgs e)
{
#region
Users usi = usl.Where(x => x.Id == ).FirstOrDefault();
usi.Id = ;
usi.Name = "老虎";
usi.CreateTime = DateTime.Now;
#endregion
}

XAML修改按钮:

 <!--#region 点击更改按钮-->
<Button x:Name="Update" Width="100" Height="30" Background="AntiqueWhite" VerticalAlignment="Center" HorizontalAlignment="Center" Content="点击更改按钮" Click="Update_Click"></Button>
<!--#endregion-->

此时点击这个修改的按钮,UI界面数据即可实时更新

WPF简单数据绑定的更多相关文章

  1. WPF简单入门总结

    WPF简单总结 最近看了点关于WPF的东西,总结了点点入门的东西. XAML语法基础 1.  定义样式 <Window.Resources><!--窗体资源的定义--> < ...

  2. WPF:数据绑定总结(1) https://segmentfault.com/a/1190000012981745

    WPF:数据绑定总结(1) visual-studio c# 1.3k 次阅读  ·  读完需要 16 分钟 0 一.概念:什么是数据绑定? WPF中的数据绑定:是在应用程序 UI 与业务逻辑之间建立 ...

  3. 【翻译】使用Knockout, Web API 和 ASP.Net Web Forms 进行简单数据绑定

    原文地址:http://www.dotnetjalps.com/2013/05/Simple-data-binding-with-Knockout-Web-API-and-ASP-Net-Web-Fo ...

  4. Knockout, Web API 和 ASP.Net Web Forms 进行简单数据绑定

    使用Knockout, Web API 和 ASP.Net Web Forms 进行简单数据绑定   原文地址:http://www.dotnetjalps.com/2013/05/Simple-da ...

  5. wpf 导出Excel Wpf Button 样式 wpf简单进度条 List泛型集合对象排序 C#集合

    wpf 导出Excel   1 private void Button_Click_1(object sender, RoutedEventArgs e) 2 { 3 4 ExportDataGrid ...

  6. wpf Content数据绑定StringFormat起作用的原理和解决

    原文:wpf Content数据绑定StringFormat起作用的原理和解决 <Window x:Class="WpfOne.Bind.Bind6" xmlns=" ...

  7. .NET CORE(C#) WPF简单菜单MVVM绑定

    微信公众号:Dotnet9,网站:Dotnet9,问题或建议:请网站留言, 如果对您有所帮助:欢迎赞赏. .NET CORE(C#) WPF简单菜单MVVM绑定 阅读导航 本文背景 代码实现 本文参考 ...

  8. silverlight简单数据绑定3

    3种数据绑定模式  OneTime(一次绑定) OneWay(单项绑定) TwoWay(双向绑定) OneTime:仅在数据绑定创建时使用数据源更新目标. 列子: 第一步,创建数据源对象让Person ...

  9. DataGrid列表信息保存为EXCEL到指定的路径 ---------继续DataGrid在WPF的数据绑定

    一.许多WPF或者Winform程序在保存数据时,会以EXCEL或者文本的形式展现可视化界面的数据,本文就简单介绍下将DataGrid列表信息保存为EXCEL到指定的路径下,例子很简单,用的着的直接用 ...

随机推荐

  1. PyCharm 链接MySQL 数据库

    1.View -> Tool Windows-Database; 2.添加数据源: 3.配置数据库的驱动信息: 4.设置驱动文件,勾选“Use Provided driver MySQL Con ...

  2. Hive 特殊分隔符处理

    HIVE特殊分隔符处理 Hive对文件中的分隔符默认情况下只支持单字节分隔符,,默认单字符是\001.当然你也可以在创建表格时指定数据的分割符号.但是如果数据文件中的分隔符是多字符的,如下图: 01| ...

  3. 阿里巴巴Java编码规范,来测测你能得多少分

    今年年初,<阿里巴巴Java开发手册>正式发布,阿里官方Java代码规范标准首次对外公开.手册发布之后在业界.学术界都获得了广泛的关注,仅微博浏览量就突破千万,下载访问量超过40万,多家媒 ...

  4. ueditor图片上传和显示问题

    图片上传: 这段是contorller代码 @RequestMapping(value = "/uploadImg", method = RequestMethod.POST) @ ...

  5. 关于AXI4-Stream to Video Out 和 Video Timing Controller IP核学习

    关于AXI4-Stream to Video Out 和 Video Timing Controller IP核学习 1.AXI4‐Stream to Video Out Top‐Level Sign ...

  6. 进程池pool

    如果有多个进程,同一时间只能有限个给cpu运行 from multiprocessing import Process,Pool import time,os def bar(arg): print( ...

  7. IKAnalyzer 添加扩展词库和自定义词

    原文链接http://blog.csdn.net/whzhaochao/article/details/50130605 IKanalyzer分词器 IK分词器源码位置 http://git.osch ...

  8. Azure SQL Database (22) Azure SQL Database支持中文值

    <Windows Azure Platform 系列文章目录> 在笔者之前的文章里,已经介绍了如何使Azure SQL Database支持中文: SQL Azure(七) 在SQL Az ...

  9. 黄聪:windowss7显示桌面图标设置在任务栏的解决办法

    1.新建一个本文文档,将以下内容复制进去: [Shell] Command=2 IconFile=explorer.exe,3 [Taskbar] Command=ToggleDesktop 2.将该 ...

  10. TweenMax 参考

    http://bbs.9ria.com/thread-214959-1-1.html TweenMax 可能是很多人都用的,包括我 但 是最近发现大量的运用就总会产生这样或那样的"怪事&qu ...