使用C#開發數據庫應用系統


 

 

第一章 初識Windows程序

01.淺談控制台應用

   解析:控制台應用程序:dos窗口中顯示

   Windows窗體應用程序:有控件參與的,支持事件的一種程序

02.關於窗體項目的注意點:

            /*01.一個解決方案下可以包含多個項目,

             * 一個項目下可以包含多個窗體

             * 02.如何設置一個項目下的某個窗體為啟動窗體???

             * 解析:通過更改Program.csMain方法中最后一行代碼設置

             * 03.控件的Name屬性相當於隱藏值,一定要改

             *    真正在窗體顯示內容的是Text屬性

             * 04.如果一個解決方案下有多個項目,如何設置某個項目為啟動項??

             * 解析:可以對項目點擊右鍵→設為啟動項

             * 05.機房的項目如何保存,或者保存后如何打開???

             * 解析:可以將解決方案另存為到指定的項目下,下次

             * 直接打開sln文件就可以了

             *

             * 06.事件激發錯誤問題???

              (這個正常,現在大家都事件的概念還不太理解,

             * 隨着學習的深入大家就會了解)

             * 解析:注意什么時候激發事件

             *

             * 07.如何讓窗體運行后無法改變大小?

             * 解析:通過如下設置:

             * 01.禁用最大化按鈕

             * 02.設置FormBorderStyle屬性為任何一個以Fixed開頭的屬性都OK

             */                                                           

03..在VS中創建一個窗體后,所有的窗體都繼承自Form類

04.構造函數:

    解析:在一個類中,方法名和類名相同,並且沒有返回值類型的方法,稱為構造函數

    作用:做初始化工作

05.什么是事件之事件詳解

    解析:由外界事物(獵槍)激發另一個事物(小鳥)的狀態發生改變的情況。

       //事件看起來像一個帶參方法,2個參數

        //sender:代表的是事件源:事件的激發者

        //e:事件的參數:和事件相關的一些信息!

06.窗體變色練習

 解析:事件(窗體的Click事件)

  This:當前窗體對象

  this.BackColor=Color.Red;

07.MessageBox(肯定出2分)

//01.參數一:提示信息

   //參數二:標題文本

   //參數三:按鈕設置

   //參數四:圖標設置

 MessageBox.Show("恭喜您,中獎500完,請吃飯可以嗎?","溫馨提示",MessageBoxButtons.YesNo,MessageBoxIcon.Warning);

Warning:

Information:

Error:

 

08.窗體傳值

  解析:從Login窗體傳遞登陸用戶名到Main窗體,可以在Main窗體中定義一個公有的變量,然后在Login窗體的登陸按鈕事件中編寫如下代碼:

  Main frm=new Main();

  frm.name=txtName.Text;

  frm.Show();

  然后在Main的load事件中為Label控件賦值。

09.真正退出程序

   在窗體的FormClosing事件中,書寫Application.Exit();

10.多文本框為空驗證

01.在工具箱中的任何控件都是一個類,一旦你將他拖動到Form窗體上,他就變成了一個對象,進而大家可以通過F4快捷鍵在屬性窗口中,給她的各個屬性賦值。

 

11.如何解決窗體已經關閉,但是整個應用沒有退出的問題?

解析:使用Application.Exit()  會出

12.練習重點

 01.窗體跳轉

   如何從窗體A跳轉到窗體B

 02.退出整個應用

 03.歡迎界面顯示歡迎您,微冷的雨

 

第2章 構建布局良好的Windows程序

2015年11月21日13:45:24

01.登陸:

  Select count(1) from student

  Where studentname= and loginpwd=?;

02.向學生表中添加一條記錄。

03.單選按鈕

04.復選按鈕

05.菜單欄(MenuStrip)

  快捷鍵

   方式一:打開(&F) ,缺點:必須先用alt+字符,先定位到一級菜單,然后按F定位到相應內容

  方式二:shortCutKeys    打開(Ctrl+F)。優點:可以跳過1級菜單,直接調用需要的窗口

和分割線

06.ToolStrip(工具欄)

01.整個控件中所有項目的圖片和原圖片大小等同,需要設置imageScalingSize:

32x32 (整個控件)

02.顯示圖像和文本選項:設置DisplayStyle的值為ImageAndText(單個Item)

03.圖像和文本的位置:TextImageRelation設置ImageBeforeText (單個Item)

07.窗體傳值

 

01.菜單欄(MenuStrip)

   設置快捷鍵方式:

    方式一:1.設置菜單項的Text屬性為(打開(&F)),

    首先必須按住alt+主菜單快捷鍵進入到對應的主菜單,

    然后直接按F就可以打開子窗體。

 

    方式二:通過菜單項的ShorCartKeys屬性設置。

     創建對應的組合鍵,可以在主界面直接按對應的

      字母鍵就可以打開子窗體

 分割線的畫法:

   01.插入分割線                                         

   02.輸入減號(-)

02.工具欄(ToolStrip)

 

   01.給工具欄項目設置圖片,首先圖片大小由整個ToolStrip來控制,

   設置    ImageScalingSize  值為圖片本身像素值。

   02.添加每一項目的類型為DropDownButton

   03.設置Text屬性為顯示的文本

   04.設置DisplayStyle屬性為ImageAndText,讓圖片和文本同時顯示

   05.TextImageRelation圖像與文本的相對位置

03. application.Exit()和this.close()

Application.Exit();//退出整個應用程序

this.Close();//關閉當前窗體

04.常見控件的使用

   RadioButton

    DateTimerPicker

    GroupBox

    Panel

05.預留問題:如何讓DateTimePiker不顯示星期

06.Anchor和Dock屬性

   Anchor:讓控件和窗體邊緣的位置保持固定的像素值。

   Dock:使控件停靠在窗體的某個部位(Top,Bottom,Left,RIght),或者填充整個窗體(Fill)

07.設置MDI窗體

   001.將Main窗體的IsMdiContainer屬性設置為true

   002.在子窗體show()之前加上如下代碼:

       frm.MdiParent=this;//this代表當前窗體

面向對象提升:只要能通過點鼠標設置屬性的地方,都可以通過代碼實現,但是代碼能實現的未必都能通過點鼠標實現!

08.關於ReadOnly的那些事兒

    如果對TextBox設置了ReadOnly屬性,那么設置字體前景色是不起作用的,必須設置BackColor為Control外的任意顏色即可。

09.如何將數據庫中Grade表中的數據綁定到下拉框中

解析:界面上年級下拉框中顯示的是年級名稱,而學生表中保存的是年級編號,怎么搞??

解析:public int GetIdByName(string gradename)

    {

        string sql="select gradeid from grade where gradeName='"+gradename+"'";

       }

第3章 使用ListView控件展示數據

 01.ListView初步

   步驟一:圖片來源於ImageList,在ImageList:

\

  步驟二:將ListView的兩個屬性和ImageList圖片源進行關聯

 

步驟三:給ListView控件添加項

 

步驟四:設置ListView顯示的圖標類型

 

 

 

 

 

 

 

第4章 實現Windows程序的數據更新

01.枚舉類型

  001.枚舉是值類型

  002.枚舉本質上保存的是數字

  003.枚舉中不能有方法

  004.枚舉也是一種數據類型

  005.枚舉一般只用來定義有限個值(10個以內)

02.Timer控件

兩大屬性:Enabled:可以控制定時器開啟還是停止。

          Start():開啟定時器  Stop()停止定時器

           Interval:每隔多少毫秒執行一段代碼。

重要事件:Tick:你要重復執行什么代碼就寫到Tick事件中。

03.模態窗口和非模態窗口

 模態窗口:如果該窗口不關閉,那么不能操作程序中的其他任何功能。ShowDialog()

 即時修改問題

 

 

 

 

 

第5章 實現Windows程序的數據綁定

01.會用新的方式加載年級下拉框。

02.會使用DataGridView控件展示所有學員的信息

03.會使用DataAdapter和DataSet對象操作離線數據。

04.Dataset:保存在客戶端內存中的一個臨時數據庫。

 一個DataSet由多個DataTable組成。

 一個DataTable中可以有多行,每一行都是一個DataRow對象,每一列都是DataColumn對象。

5.“請選擇”能不能放到數據庫中形成一條記錄。

      

  登陸

  修改密碼

  主界面

  新增學員信息

  修改學員信息

  按姓名查詢學員信息

  成績管理

  刪除

  按年級查詢學員信息

DataAdapter和DataSet結合使用圖

 

 

 

第6章 數據篩選和排序

01.TreeView控件

    *學習到了在一個TreeView控件中,每一個節點的類型都是一個TreeNode。

       *默認情況下,會自動激活TreeVuew的根節點

       *獲取當前選中節點代碼:tvList.SelectedNode

 

       *獲取當前選中節點的根節點:tvList.SelectedNode.Parent(根節點對象)

       *統計TreeView控件某個節點的深度,深度是從0開始的。獲取深度的屬性是

           lvList.SelectedNode.Level;

       *節點中如何添加圖片:ImageIndex(默認顯示的圖片) (SelectedImageIndex:選中后的圖片)

       *Tag:專門為程序員提供的編程接口,方便用戶對程序的操作 。Tag里面可以存儲任意

       類型的數據,但是一個數據無論之前是什么類型,一旦被放入到Tag屬性中,那么就變成了

       Object類型,所以,取出Tag屬性值的時候要進行類型轉換。

       *AfterSelect事件,當選中某個節點后觸發的事件

02.DataView(類)

DataView dv=new DataView();

dv.RowFilter();

他說:我可以滿足你只和DB交互一次,后續所有的查詢操作(過濾)都由我來完成。

   *DataView干啥的?

   解析:用來篩選數據集DataSet中某張表的數據,換句白話來說,就是取出學生表中

   一部分符合條件的數據,然后保存到DataView對象中。DataView只是客戶端保存數據的一個

   容器,和DataSet呀,DataTable呀!一樣。

   *DataSet和DataView和DataTable有什么關系?

   解析:這里有3分。

   DataSet包含多個DataTable。一個DataTable可以擁有多個DataView

   *DataRow有一個屬性叫RowFilter,可以對表中的數據進行篩選過濾。

   dv.RowFilter="where后面的內容"; 例如:dv.RowFilter="gradeid="+gid+"";

  

 

2015年11月30日16:48:39

作業:

1.在根據年級名稱查詢學生信息窗體中,如下

 

右鍵菜單中有一項叫錄入成績

 

2.

 

3.清空

4.添加學生信息成功后,返回主鍵值。

第七章  航班系統   (周四下午前)

 

 

 

 

第八章 商品管理系統

 

 

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM