您的位置:首页 > 其它

WPF数据修改demo

2013-07-28 23:45 281 查看
今天晚上研究了下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();

        }

    }

}

 

 

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: