zoukankan      html  css  js  c++  java
  • WPF使用数据读取显示GridView

    C# Code

    using System;
    using System.Windows;
    using System.Windows.Controls;
    using System.Windows.Input;
    using System.Windows.Media;
    using System.Windows.Data;
    using System.Data.SqlClient;

    namespace wang.lx
    {
    class HXGL_HXGL:Window
    {
    ListView lv;
    dbHelper db = new dbHelper();
    GridView gv;
    GridViewColumn gvc;
    public HXGL_HXGL()
    {
    Title = "横向项目管理";
    Grid grid = new Grid();
    SizeToContent = SizeToContent.Height;
    Width = 750;
    grid.Margin = new Thickness(10);
    Content = grid;

    RowDefinition rd = new RowDefinition();
    rd.Height = GridLength.Auto;
    grid.RowDefinitions.Add(rd);

    rd = new RowDefinition();
    rd.Height = GridLength.Auto;
    grid.RowDefinitions.Add(rd);

    WrapPanel wrap = new WrapPanel();
    Button btn1 = new Button();
    btn1.Content = "增加";
    btn1.Click += HXGL_btnOnClick;
    btn1.Height = btn1.Width = 40;
    wrap.Children.Add(btn1);

    Button btn2 = new Button();
    btn2.Height = btn2.Width = 40;
    btn2.Content = "修改";
    wrap.Children.Add(btn2);

    Button btn3 = new Button();
    btn3.Height = btn3.Width = 40;
    btn3.Content = "删除";
    wrap.Children.Add(btn3);

    grid.Children.Add(wrap);

    ScrollViewer sv = new ScrollViewer();
    sv.HorizontalScrollBarVisibility = ScrollBarVisibility.Auto;
    sv.Height = this.Height - btn1.Height - 10;
    grid.Children.Add(sv);
    Grid.SetRow(sv, 1);
    lv = new ListView();
    sv.Content = lv;
    Data_Init();

    gv = new GridView();
    gv.AllowsColumnReorder = true;
    gv.ColumnHeaderToolTip = "横向项目管理";
    lv.View = gv;

    //可以向如下方式添加,但相当繁琐,代码重复次数超过两次,最好写成函数
    //gvc = new GridViewColumn();
    //gvc.DisplayMemberBinding = new Binding("name");
    //gvc.Header = "项目名称";
    //gvc.Width = 100;
    //gv.Columns.Add(gvc);

    //gvc = new GridViewColumn();
    //gvc.DisplayMemberBinding = new Binding("XMXH");
    //gvc.Header = "项目序号";
    //gvc.Width = 100;
    //gv.Columns.Add(gvc);

    //gvc = new GridViewColumn();
    //gvc.DisplayMemberBinding = new Binding("fzr");
    //gvc.Header = "负责人";
    //gvc.Width = 100;
    //gv.Columns.Add(gvc);

    //gvc = new GridViewColumn();
    //gvc.DisplayMemberBinding = new Binding("HTJF");
    //gvc.Header = "合同经费";
    //gvc.Width = 100;
    //gv.Columns.Add(gvc);

    //gvc = new GridViewColumn();
    //gvc.DisplayMemberBinding = new Binding("DKJE");
    //gvc.Header = "到款金额";
    //gvc.Width = 100;
    //gv.Columns.Add(gvc);

    //利用数组批量添加,注意,此处必须和读取的字段大小写保持一致,否则无法显示
    string[] bstr = {"Name","XMXH","FZR","HTJF","DKJE", "HTBH", "FZRYB", "SBJF", "DKSJ", "XMLB", "LXSJ", "QDRQ", "JTSJ", "WTDW", "YXQX", "XMJJ","XMWCQKJJ", "XMCJZ" };
    string[] headstr = {"项目名称","项目序号","负责人","合同经费","到款金额", "合同编号", "负责人院别", "设备经费", "到款时间", "项目类别", "立项时间", "签订日期", "结题时间", "委托单位", "有效期限", "项目简介","项目完成情况简介", "项目参加者"};
    AddColumn(bstr, headstr);
    }
    //批量添加函数
    protected void AddColumn(string[] bstr, string[] headstr)
    {
    for(int i=0;i<bstr.Length;i++)
    {
    gvc = new GridViewColumn();
    gvc.DisplayMemberBinding = new Binding(bstr[i]);
    gvc.Header = headstr[i];
    //gvc.Width = 100;
    gv.Columns.Add(gvc);
    }
    }

    //获取数据源
    protected void Data_Init()
    {
    lv.ItemsSource = db.GetDs("select * from ky_hxgl").Tables[0].DefaultView;

    }
    protected void HXGL_btnOnClick(object sender, RoutedEventArgs e)
    {
    Button btn = sender as Button;
    string btnstr = btn.Content.ToString();
    switch (btnstr)
    {
    case "增加":
    HXGL_HXLR hxlr = new HXGL_HXLR();
    Init_Form(hxlr);
    break;
    default:
    break;
    }
    }
    protected void Init_Form(object sender)
    {
    Window win = sender as Window;
    win.Owner = this;
    win.ShowInTaskbar = false;
    win.WindowStartupLocation = WindowStartupLocation.CenterOwner;
    win.ShowDialog();
    }
    }
    }

    注意,GridViewRow的header一定要和读取的字段大小写保持一致,否则,无法读取。

    可能你会用到修改数据库列的语句   Exec sp_name 'table.Name','NewName','Column'

  • 相关阅读:
    第4月第1天 makefile automake
    第3月30天 UIImage imageWithContentsOfFile卡顿 Can't add self as subview MPMoviePlayerControlle rcrash
    第3月第27天 uitableviewcell复用
    learning uboot fstype command
    learning uboot part command
    linux command dialog
    linux command curl and sha256sum implement download verification package
    learning shell script prompt to run with superuser privileges (4)
    learning shell get script absolute path (3)
    learning shell args handing key=value example (2)
  • 原文地址:https://www.cnblogs.com/wws19125/p/2435678.html
Copyright © 2011-2022 走看看