【WPF學習筆記】之如何把資料庫裡的值讀取出來然後顯示在頁面上:動畫系列之(六)

來源:互聯網
上載者:User

標籤:namespace   學習   canvas   count   stat   collect   後台   trim   public   

......

承接系列五

 

上一節講了,已經把資料儲存到資料庫並且刪除資料,本講是把已經存在的資料從資料庫裡讀取出來,顯示在頁面上。

 

首頁面後台代碼:

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 User.sqlHelper;using System.Data;using System.IO;using System.Drawing;namespace User{    /// <summary>    /// MainWindow.xaml 的互動邏輯    /// </summary>    public partial class MainWindow : Window    {        public MainWindow()        {            InitializeComponent();        }        string ss = "";        public static string name = "";        int id = 0;        public int usergrade = 1;        private void Window_Loaded(object sender, RoutedEventArgs e)        {            myHelper.showWarnMessage += new myHelper.ShowWarnMessage(myHelper_showWarnMessage);        }        //傳遞登入介面的使用者名稱        User_test _u = new User_test();        void myHelper_showWarnMessage(string _str)        {            //擷取使用者名稱            string _msg = _str;            //傳遞名字到首頁面            name = tb_name.Text = _msg;            //根據使用者名稱得到許可權            usergrade = _u.getUserGrade(tb_name.Text);
       //從這裡開始
//申請者許可權 if (usergrade == 0) { //根據我登入的使用者名稱和id,把word表的資訊讀取出來 //查詢User表擷取使用者名稱和id DataSet _ds = _u.GetList(); if(_ds != null) { DataTable _dt = _ds.Tables[0]; for (int i = 0; i < _dt.Rows.Count; i++) { int userid = int.Parse(_dt.Rows[i]["UserID"].ToString().Trim()); string username = _dt.Rows[i]["UserName"].ToString().Trim(); //如果畫面登入的使用者名稱與user表的名字一致,則取出表裡的id if (tb_name.Text.Equals(username)) { id = userid; } } } Word _w = new Word(); _ds = _w.GetList(); if(_ds != null) { DataTable _dt = _ds.Tables[0]; for (int i = 0; i < _dt.Rows.Count; i++) { int submitterid = int.Parse(_dt.Rows[i]["SubmitterID"].ToString().Trim()); //如果word表取出的id與user表id一致,則把word表裡的資料都取出來 if (id.Equals(submitterid)) { //初始化使用者控制項2的屬性,然後一一賦值 uc_item item = new uc_item(); item.loadCombobox(); sp_1.Children.Add(item); Canvas.SetLeft(item, 0); //編號 ss = item.tb_id.Text = _dt.Rows[i]["WordID"].ToString().Trim(); //提交人 item.tb_uploader.Text = _u.getUserName(int.Parse(_dt.Rows[i]["WordID"].ToString().Trim())); //目前狀態 item.cb_type2.Text = _dt.Rows[i]["CurrentStatus"].ToString().Trim(); //提交狀態 item.cb_type.Text = _dt.Rows[i]["SubmitStatus"].ToString().Trim(); //內容 item.tb_describe.Text = _dt.Rows[i]["WordDescribe"].ToString().Trim(); //提交日期 item.dp_date.Text = _dt.Rows[i]["SubmitTime"].ToString().Trim(); //最後更新時間 item.dp_date2.Text = _dt.Rows[i]["LastTime"].ToString().Trim(); //設定資料顯示條的高度 sp_1.Height = Math.Max(sp_1.Children.Count * 10, 930); } } } }
       //到這裡結束
//審批者許可權 else if (usergrade == 1) { } //執行者許可權 else if (usergrade == 2) { } } public static bool isnew = false; //建立時嵌套另一個使用者控制項2在首頁面上 private void btn_new_Click(object sender, RoutedEventArgs e) { isnew = true; //建立 uc_item _ucItem = new uc_item(); //設定號碼初始化 //編號 _ucItem.tb_id.Text = "0"; //登入人 _ucItem.tb_uploader.Text = this.tb_name.Text; //目前狀態 _ucItem.cb_type2.Text = "未"; //審批狀態 _ucItem.loadCombobox(); //初始化資訊添加到建立中 sp_1.Children.Add(_ucItem); Canvas.SetLeft(_ucItem, 0); sp_1.Height = Math.Max(sp_1.Children.Count * 10 ,930); } private void btn_nosolve_Click(object sender, RoutedEventArgs e) { } private void btn_solve_Click(object sender, RoutedEventArgs e) { } private void btn_back_Click(object sender, RoutedEventArgs e) { sp_1.Children.Clear(); my_uc_login.showLogin(); } internal static void VisibilityProperty() { throw new NotImplementedException(); } }}

 

結果圖:

點擊登入後上一次儲存的資料就顯示出來了。

 

 

 

【WPF學習筆記】之如何把資料庫裡的值讀取出來然後顯示在頁面上:動畫系列之(六)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.