今天晚上研究了下wpf,现在把代码贴出来供大家学习参考

sql语句:

create table userinfos
(

ContactID  int primary key identity(1,1),
FirstName varchar(100),
LastName varchar(100),
EmailAddress varchar(100)
)
go
insert into  userinfos values('wanglei','aa','72121222@qq.com');
insert into  userinfos values('qss','bb','23432354@qq.com');
insert into  userinfos values('gdgg','cc','rgter@qq.com');
insert into  userinfos values('cvvd','dd','5446567576@qq.com');
select ContactID,FirstName,LastName,EmailAddress from userinfos where ContactID<=100

MainWindow.xaml前台代码

<Window x:Class="WpfApplication1.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Closed="Window_Closed"
        Title="MainWindow" Height="350" Width="525">
    <Grid>

<Grid.RowDefinitions>

<RowDefinition Height="*" />

<RowDefinition Height="Auto" />

<RowDefinition Height="22" />

</Grid.RowDefinitions>

<ListView Name="listView1" MinWidth="280" >

<ListView.View>

<GridView x:Name="gridView1">

<GridViewColumn Header="ContactID" DisplayMemberBinding="{Binding Path=ContactID}"></GridViewColumn>

<GridViewColumn Header="FirstName" DisplayMemberBinding="{Binding Path=FirstName}"></GridViewColumn>

<GridViewColumn Header="LastName" DisplayMemberBinding="{Binding Path=LastName}"></GridViewColumn>

<GridViewColumn Header="EmailAddress" DisplayMemberBinding="{Binding Path=EmailAddress}"></GridViewColumn>

</GridView>

</ListView.View>

</ListView>

<WrapPanel Grid.Row="1" Orientation="Horizontal"  DataContext="{Binding ElementName=listView1,Path=SelectedItem}">

<StackPanel Orientation="Horizontal" Margin="5,2,5,2">

<TextBlock Name="textBlock_ContactID" Text="ContactID:" />

<TextBox Name="textBox_ContactID" MinWidth="100" Text="{Binding ContactID}" />

</StackPanel>

<StackPanel Orientation="Horizontal" Margin="5,2,5,2">
                <TextBlock Name="textBlock_FirstName" Text="FirstName:" />

<TextBox Name="textBox_FirstName" MinWidth="100" Text="{Binding FirstName,UpdateSourceTrigger=PropertyChanged }" />

</StackPanel>

<StackPanel Orientation="Horizontal" Margin="5,2,5,2">

<TextBlock Name="textBlock_LastName" Text="LastName:" />

<TextBox Name="textBox_LastName" MinWidth="100" Text="{Binding LastName}" />

</StackPanel>

<StackPanel Orientation="Horizontal" Margin="5,2,5,2">

<TextBlock Name="textBlock_EmailAddress" Text="EmailAddress:" />

<TextBox Name="textBox_EmailAddress" MinWidth="100" Text="{Binding EmailAddress}" />

</StackPanel>

</WrapPanel>

<Button Grid.Row="2" HorizontalAlignment="Right" Click="button1_Click" Name="button1">Refresh</Button>

</Grid>

</Window>

后台代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using System.Data.SqlClient;
using System.Data;
namespace WpfApplication1
{
    /// <summary>
    /// MainWindow.xaml 的交互逻辑
    /// </summary>
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
            getData();

}
        SqlDataAdapter sda;
        DataTable dt;
      //关闭窗体
        private void Window_Closed(object sender, EventArgs e)
        {

sda.Update(dt);
        }

void getData()
        {

SqlConnectionStringBuilder connbuilder = new SqlConnectionStringBuilder();

connbuilder.DataSource = ".";

connbuilder.IntegratedSecurity = true;

connbuilder.InitialCatalog = "wl";

SqlConnection conn = new SqlConnection(connbuilder.ConnectionString);

sda = new SqlDataAdapter("select * from userinfos;", conn);

SqlCommandBuilder commbuilder = new SqlCommandBuilder(sda);

sda.UpdateCommand = commbuilder.GetUpdateCommand();

dt = new DataTable();

sda.AcceptChangesDuringUpdate = true;

sda.Fill(dt);

listView1.ItemsSource = dt.DefaultView;

}

//更新
        private void button1_Click(object sender, RoutedEventArgs e)
        {

sda.Update(dt);

getData();

}
    }
}

[置顶] WPF数据修改demo的更多相关文章

  1. [置顶] 大数据架构hadoop

    摘要:Admaster数据挖掘总监 随着互联网.移动互联网和物联网的发展,谁也无法否认,我们已经切实地迎来了一个海量数据的时代,数据调查公司IDC预计2011年的数据总量将达到1.8万亿GB,对这些海 ...

  2. MySQL 上移/下移/置顶

    在编写网站系统时,难免会用到上移.下移.置顶的功能,今天小编就介绍一下我的思路. 首先,需要一张数据表: CREATE TABLE `a` ( `id` ) NOT NULL AUTO_INCREME ...

  3. php 排序和置顶功能实现

    (1)排序操作思路 一般来说都是按照发布时间排序.时间戳大的靠前,所以用倒序desc,而不是asc (2)置顶操作思路: 点击置顶时,修改数据库addtime字段值为当前时间即可.因为排序是按照时间戳 ...

  4. HEXO添加置顶功能

    使用库:参考 http://wangwlj.com/2018/01/09/blog_pin_post/ 目前已经有修改后支持置顶的仓库,可以直接用以下命令安装.(cmd 到博客根目录,nmp运行) $ ...

  5. WPF主窗体调用 User32的SetWindowPos 设置窗体置顶会导致与其他窗体抢夺焦点的问题

    最近发现:自己开发的窗体应用,在二级弹窗或者提示框弹出的时候,交替点击窗体和窗体外(相当于窗体交替的获取焦点和失去焦点),都会导致其他的应用一闪一闪的. 经过排查,是由于该窗体由于部分因素考虑,用了  ...

  6. 让WPF的Popup不总置顶的解决方案

    使用WPF的Popup的时候会发现有一个问题,它总是会置顶,只要Popup的StayOpen不设置为False,它就一直呆在最顶端,挡住其他的窗口. 解决方案是继承Popup重新定义控件PopupEx ...

  7. WPF Popup 置顶问题

    原文 WPF Popup 置顶问题 问题: 使用wpf的popup,当在popup中弹出MessageBox或者打开对话框的时候,popup总是置顶,并遮住MessageBox或对话框. 解决: 写如 ...

  8. WPF实现只打开一个窗口,并且重复打开时已经打开的窗口置顶

    内容来自:https://codereview.stackexchange.com/questions/20871/single-instance-wpf-application 第一步:添加Syst ...

  9. jQuery操作table数据上移、下移和置顶

    jQuery 操作table中的tr换行的步骤如下: 1.获取当前tr var $tr = $(this).parents("tr"); 2.移动tr //上移 $tr.prev( ...

随机推荐

  1. EntityFramework:状态变化与方法的关系

    一.约定    OnModelCreated 有一些限制需要注意,例如:    1.表名不支持使用标签进行标注    2.最小长度在 OnModelCreated 中不支持    3.正则表达式在 O ...

  2. Java高效编程(2) -- Creating and Destroying Objects

    Item 1: Consider static factory methods instead of constructors Advantage: One advantage of static f ...

  3. 解决Crystal Report XI R2不能在64操作系统正常工作的问题-web程序

    原文:[原创]解决Crystal Report XI R2不能在64操作系统正常工作的问题-web程序 我更换了新的电脑,操作系统也从原来32位的windows 2003 R2升级到windows 2 ...

  4. NPOI 的使用心得

    Excel 数据  通过 c# 代码逻辑 导入 到数据库  . 其中各种坑爹.原因是 单元格 数据 与 数据库 字段的数据类型 会有出入.因为 Excel 是人工输入. 比如 一个单元格  本来 只能 ...

  5. hdu 4932 Miaomiao&#39;s Geometry(暴力)

    题目链接:hdu 4932 Miaomiao's Geometry 题目大意:在x坐标上又若干个点,如今要用若干条相等长度的线段覆盖这些点,若一个点被一条线段覆盖,则必须在这条线的左端点或者是右端点, ...

  6. 【转】关于“ORA-01653: 表 SYS.AUD$ 无法通过 128 (在表空间 SYSTEM 中) 扩展”的错误

    SQL*Plus: Release 11.1.0.6.0 - Production on 星期一 5月 17 18:31:08 2010 Copyright (c) 1982, 2007, Oracl ...

  7. sessionStorage、localStorage、cookie

    sessionStorage 和 localStorage 是HTML5 Web Storage API 提供的,可以方便的在web请求之间保存数据.有了本地数据,就可以避免数据在浏览器和服务器间不必 ...

  8. Java Persistence with MyBatis 3(中国版) 第五章 与Spring集成

    MyBatis-Spring它是MyBatis子模块框.它用来提供流行的依赖注入框架Spring无缝集成. Spring框架是一个基于依赖注入(Dependency Injection)和面向切面编程 ...

  9. Angular指令(一)

    Angular开发者手册重点翻译之指令(一) 创建自定义的指令 这个文章将解释什么需要在自己的angularjs应用中创建自己的指令,以及如何实现它. 什么是指令 在高的层面上讲,指令是DOM元素中的 ...

  10. [推荐]ORACLE PL/SQL编程之五:异常错误处理(知已知彼、百战不殆)

    原文:[推荐]ORACLE PL/SQL编程之五:异常错误处理(知已知彼.百战不殆) [推荐]ORACLE PL/SQL编程之五: 异常错误处理(知已知彼.百战不殆) 继上三篇:ORACLE PL/S ...