顯示具有 新增 標籤的文章。 顯示所有文章
顯示具有 新增 標籤的文章。 顯示所有文章

2017年1月9日 星期一

16/30 網頁與資料庫#8 -- 自己設計HTML畫面的 "新增"一筆記錄

前面幾篇文章,都使用到大型控制項(如GridView or DetailsView)與SqlDataSource,快速產生CRUD的資料存取畫面。
上一篇文章 http://mis2000lab.blogspot.com/2017/01/1530-7-gridview.html
但使用這些大型控制項,因為不好修改,如果您搭配前端設計師(媒體設計、美工人員),對方可能不願意配合。在這種情況下,盡量讓畫面上的輸入欄位,越貼近傳統HTML表單、變化越少,可能會好一些。
所以今天要跟大家分享的就是:
以基礎的Web控制項(如TextBox、清單控制項等等),作為畫面輸入(新增)的輸入元件
目前雖然還沒有能力,自己寫程式存取資料庫(如ADO.NET)
但仍可以搭配 SqlDataSource來幫幫忙
YouTube教學影片 https://youtu.be/VDLu879rt14

這個範例,最早是在 章立民老師 的書本裡面看見的(用實例學ASP.NET 3.5-基礎篇,碁峰出版社)
因為我沒有記憶、背誦 SqlDataSource產生的 <標籤>
所以我找了一下 Visual Studio的設定步驟,發現這些步驟可以自動產生這些<標籤>
對初學者來說,接受度比較高
也分享給大家
感恩 章立民老師在資訊大道上,不斷提攜、教育我們
從大學畢業專題,我就是用 章老師的書籍 -- FoxPro 2.6做為參考
文末也分享 章立民老師 的大作,我非常喜歡這篇文章 --
笑談我的學習之路
https://dotblogs.com.tw/limingstudio/2009/11/13/11759
下一篇文章: 網頁與資料庫#9 -- 開放式並行存取 (Optimistic Concurrency)
http://mis2000lab.blogspot.com/2017/01/1730-9-optimistic-concurrency.html

15/30 網頁與資料庫#7 -- 我的 GridView有 "新增"功能

上一篇文章( http://mis2000lab.blogspot.com/2017/01/1330-5-calendardatabinding.html )提到:
當我們練習多個ASP.NET控制項、SqlDataSource的互動。
您可知道這些精靈組合出來的東西,有不少漏洞與缺失?
該怎麼處理?考驗您(初學者)對ASP.NET觀念是否熟悉?
尤其是「DataBinding的時機」
==========================================
如果您可以控制 大型控制項 「DataBinding的時機」
那麼您可以進行下一個範例「我的 GridView有 "新增"功能」
透過控制 GridView的資料來源:
  1. "有"資料的時候,就呈現資料。一般的 GridView外觀。
    例如 GridView1.DataSourceID = "SqlDataSource1"
    或是
    GridView1.DataSource = ds(註:自己寫程式 DataSet or DataTable等)
    GridView1.DataBind()
  2. "沒有" 資料時,就呈現GridView「空白樣版 EmptyDataTemplate」。
    裡面事先加入 DetailsView的「新增」便可完成
    例如
    C#語法的GridView1.DataSourceID = null
    VB語法的GridView1.DataSourceID = Nothing
今天的 YouTube影片: https://youtu.be/86u63WJrZ34

============================================
推薦微軟MVP -- KK Bruce老師的文章,寫得非常詳細喔
GridView「新增」功能 破解 完整攻略
kkbruce.blogspot.com/2010/04/gridview.html
GridView新增功能 圖文篇
kkbruce.blogspot.com/2010/07/gridview.html
好的,我們的下一篇文章將會分享
如果畫面上「不使用」大型控制項?例如:不使用 DetailsView控制項
完全用「基礎」的Web控制項來設計畫面,能否(盡量)不寫程式也做到資料新增??
詳見下一篇文章 http://mis2000lab.blogspot.com/2017/01/1630-8-html.html 

2016年12月21日 星期三

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

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


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

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
請看我們的「售後服務」範圍(嚴格認定)
......................................................................................................................................................
事先錄製好的影片,並非上課時側錄!   觀看影片時,有如我「一對一」跟您面對面講課