国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

數據綁定(翻譯)

2024-07-21 02:23:52
字體:
來源:轉載
供稿:網友
中文信息:

           數據綁定和控件的介紹

當微軟公司開發出窗體控件和網頁控件時,它就拼命的實現數據綁定.當時還是使用的是vb,他們就進行了大篇幅的功能程序編輯.

最有效的數據綁定不是我們說的dataset,而是對象,結構和對象集.數據綁定有個顯著的特點:網頁中實現數據綁定的控件,我們不要對它進行其他的操作.數據綁定后只有讀的操作,沒其他的操作,也就是說,控件把數據源的信息拿過了,只是用用的,不能操作.而我們在建其他的對象或ui時,不需要關心它,而它的操作是一目了然的.

windows窗體控件數據綁定可以讀和寫,而且有的操作更復雜.這樣一來,這些數據從數據庫中調出,并在我們的ui控件中顯示,一旦ui控件的數據改變,數據庫中的數據也隨著它改變,當然這些操作不需要我們來完成,不過數據的更改難免會讓我們寫更多的代碼.由于上面的特點,我們可以把它的這些特點用到我們的企業和類集里去,這些特點包括:

1.擁有ui等數據的修改.

2.可以使的datagrid數據進行正確的綁定.

3.在datagrid中子對象可以進行編輯.

4.在datagrid中可以動態的增加或刪除子對象.

對于一個簡單的對象,當我們修改正確的數據時,我可以通過事件來完成對窗體數據的綁定.

通過這些事件,我們可以使ui的數據隨我們的修改而在任何時候進行更新.

在ui中一旦其正確的規則被加入的數據破壞,那我們必須知道如何去修改.同樣使用不確當的事件來綁定數據,會使綁定出錯.

另外,在這里我們還有許多可選擇的特點可以用.例如,datagrid就是一個常用的綁定控件.件通過正確的使用我們的集,我們可以使datagrid控件更加的自能化.

我們可以一起使用ibindinglist 和datagrid ,那樣會更方便.

最后在集使用當中有著比較顯著的特點,我們稱作為子對象.子對象可以使用ieditableobject使的datagrid在數據編輯上更加的方便.當有無效數據的時候,子對象可以使用idataerrinfo,從而使datagrid對出錯的地方用下畫線標出來.

總之,我們只需要寫一點點的代碼就可以使datagrid的優點發揮的淋漓盡致.

舉例一個窗口綁定的例子:

一個窗體上的控件的屬性綁定不是復雜的,舉個例子,看看下面的簡單的order類:
public class order
private mid as string = ""
private mcustomer as string = ""
public property id() as string
get
return mid
end get
set(byval value as string)
mid = value
end set
end property
public property customer() as string
get
return mcustomer
end get
set(byval value as string)
mcustomer = value
end set
end property
end class
這里的比較特殊的代碼是:

private mid as string = ""
private mcustomer as string = ""
注意在這里變量的初始化是沒有值的,在visual basic .net中當他們聲明時就自動初始化了,所以他們不是很特殊.

由于我們不這樣做的話,數據綁定就會失敗.這表明變量的自動初始化不會發生在數據綁定到對象的時候,沒有初始化的變量在綁定數據的時候會拋出例外.

所以變量的聲明必須在數據綁定之前,這意味著我們在數據綁定前對變量正確的初始化,會讓我避免產生例外

我們建一個窗體,在它load 的時候把數據綁定到它控件的屬性上去.


綁定的代碼如下:

private morder as order
private sub orderentry_load(byval sender as system.object, _
byval e as system.eventargs) handles mybase.load
morder = new order()
txtid.databindings.add("text", morder, "id")
txtcustomer.databindings.add("text", morder, "customer")
end sub
事實上每個窗體上的控件都有一個數據綁定的連接.這個連接庫包含一系列數據綁定的屬性和

數據源的屬性.更有趣的是我們從一個數據源綁定幾個不同的控件,同樣我也可以把多個數據源綁定到不同的控件屬性上.

通過簡單的數據綁定代碼我們就可以創建很多復雜的擁護接口.例如:用上面例子的代碼,我們把一個save按鈕的enabled 屬性綁定到一個business對象的isvalid屬性上.當對象準備保存的時候這個按鈕控件對用戶來說是有效的.

記住這種數據綁定不是直接的,不光是數據從對象顯示到窗口上,而且用戶的對數據的更改是自動返回的.這些都是在用戶瀏覽每個區域的時候發生,例如: 當控件失去焦點時,我們的用戶改變的txtid控件的value的值,這個數據更新到對象上去,這些數據都是通過set屬性來實現的.我們不需做其他的數據綁定操作,系統通過它的屬性自動取得數據.
  • 網站運營seo文章大全
  • 提供全面的站長運營經驗及seo技術!
  • 發表評論 共有條評論
    用戶名: 密碼:
    驗證碼: 匿名發表
    主站蜘蛛池模板: 屏边| 揭西县| 青神县| 通渭县| 赫章县| 和林格尔县| 利辛县| 鄂托克前旗| 大连市| 左云县| 孙吴县| 绥阳县| 两当县| 竹山县| 赤峰市| 湾仔区| 古丈县| 龙川县| 福鼎市| 阜康市| 岚皋县| 石家庄市| 股票| 碌曲县| 辉南县| 乌拉特中旗| 西盟| 防城港市| 株洲县| 崇礼县| 都兰县| 维西| 晋江市| 民丰县| 宿松县| 株洲县| 黔江区| 靖州| 五常市| 电白县| 长垣县|