顯示具有 樣版 標籤的文章。 顯示所有文章
顯示具有 樣版 標籤的文章。 顯示所有文章

2017年1月9日 星期一

12/30 網頁與資料庫#4 -- 大型控制項的樣版(Template)與清單控制項

延續上一篇文章的主題(http://mis2000lab.blogspot.com/2017/01/1130-3-template.html)
我們繼續下去
如果您要在大型控制項「裡面」、樣版「裡面」加入清單控制項,如DropDownList
有這兩種情況
第一,選項很簡單,例如:是/否? 男/女?
第二,選項多而且可能異動。例如:出生地、部門別、科系....
出生地(縣市)可能因為行政區重整,做修改
部門可以擴編或是異動
當初就讀的科系可能改名字或異動
我直接用Youtube教學影片說明,比較清楚 -- https://youtu.be/Gaatqr2pJFw

以今天分享的範例來說,其實滿實用的
我也是在台灣幾本入門書上沒看見,才想到要做這示範
下一篇文章則是讀者詢問的範例,頗為有趣 -- 
http://mis2000lab.blogspot.com/2017/01/1330-5-calendardatabinding.html

11/30 網頁與資料庫#3 -- 大型控制項的樣版(Template)

今天要分享的範例是「大型控制項的樣版(Template)」
上一篇文章  http://mis2000lab.blogspot.com/2017/01/1030-2-sqldatasource.html
網站的「前台」,給一般用戶(End User)觀賞時,當然是爭奇鬥艷,各種前端的花俏技巧都得加上。
但到了「後台」,也就是必須輸入會員帳號、密碼才能看見的「網站管理區」
這裡的功能就很單純,但是程式數量很 "多",例如:資料存取(CRUD)、查詢(搜尋)、各種報表的產生(光是各式各樣的報表,都是幾十份起跳!)....等等。
如果一個一個功能,還是得 自己寫程式+自己手寫HTML畫面,那麼「生產力」太差勁了
ASP.NET (Web Form)最強的的應該就是「大型控制項」,尤其是「資料繫結控制項」吧
常用的功能,可以快速完成,然後小幅修改即可。
其實修改大型控制項,除了畫面上的修改(樣版)以外
也可以在後置程式碼裡面動手,但這難度又高了一點點。沒關係,我們慢慢來.....
問題是:接下來的這兩個小幅修改(範例),該怎麼做呢?
第一個比較簡單,我們只是把 TextBox(文字輸入方塊)改成 Calendar日曆控制項
用意是:避免使用者輸入「日期格式」時,自己填寫毫無規範。
例如:有人寫2017/1/1,有人會補上零 2017-01-01,有人寫日月年格式 Jan-1-2017
不如直接點選 Calendar日曆控制項 ,產生的「日期格式」比較一致化
請看 Youtube教學影片 - https://youtu.be/Sr61a1sCSqM

這個範例有兩三種變化,也可以說「大型控制項+基礎控制項」可以做出什麼變化呢?
我得在下一篇文章,再與您分享了
http://mis2000lab.blogspot.com/2017/01/1230-4-template.html

2016年12月5日 星期一

[YouTube影片] 我的 GridView有「新增」功能

[YouTube影片] 我的 GridView有「新增」功能

dotblogs.com.tw/mis2000lab/2016/11/02/gridview_insert_template_2016

SqlDataSource做不到、做不好的地方#2 -- 我的 GridView有「新增」功能
很容易讓初學者"走火入魔"的範例  Orz
附上 Youtube教學影片

這個範例有幾個讓我印象深刻的地方:
第一,我忘記出處。
      當年找範例並沒有想到出書、或是寫 Blog,所以並沒有紀錄原作者的資料,實在很抱歉
      現在我找到範例,都會在程式碼裡面,著名出處,甚至是書本名稱。
      要向發明這個範例的作者致敬,非常有趣的好範例

第二,看見這個範例的初學者 很容易 "走火入魔"
      很多讀者、上課學員,看了這個範例,發現:這麼簡單就能做出「原廠GridView」做不到的功能
      從此就走火入魔、就瘋了
     
      以後每作任何一個功能,就會來問「我這個功能一定要寫在 GridView裡面,請教我!」
      這種執迷不悟的學員,被我教訓者,多矣!
      因為人數頗多,我後來上課就再也沒講過這範例了,圖個耳根清淨

第三,完整的程式碼與步驟,另一位微軟MVP -- KK Bruce 陳傳興老師有發表,請參閱他的文章:
 這個範例最重要的關鍵,就是:
     我們可以透過「控制」資料來源、「控制」 DataBinding,讓大型控制項的「樣版」被我們操控

** 當我們設定 GridView1.DataSourceID = "SqlDataSource1" ,畫面上的 GridView控制項就會呈現資料

**  當我們設定 GridView1.DataSourceID = null  (VB語法為 Nothing) ,畫面上的 GridView控制項因為沒有資料,就會呈現 EmptyDataTemplate樣版
    我們剛好在這邊藏了一個 DetaislView做新增(設定 DefaultMode屬性 = Insert)

類似的範例,之前也發表過:

SqlDataSource做不到、做不好的地方

youtu.be/P7AKhH-9YrE  (YouTube影片)

如果能把這兩個範例一起看、一起學習,
就會知道是相同的技巧:
  



我將思想傳授他人, 他人之所得,亦無損於我之所有;
猶如一人以我的燭火點燭,光亮與他同在,我卻不因此身處黑暗。----Thomas Jefferson
寫信給我--  mis2000lab (at) yahoo.com.台灣  或是  school (at) mis2000lab.net
................   facebook社團   https://www.facebook.com/mis2000lab   ......................
................   Google+   https://plus.google.com/100202398389206570368/posts ........
................  YouTube (ASP.NET) 線上教學影片  http://goo.gl/rGLocQ
請看我們的「售後服務」範圍(嚴格認定)
......................................................................................................................................................
事先錄製好的影片,並非上課時側錄!   觀看影片時,有如我「一對一」跟您面對面講課