用DataBindings屬性繫結控制元件的值
WinForm中的很多控制元件,如Label、TextBox等都包含DataBindings屬性,其型別為ControlBindingsCollection,是Binding類的集合。Binding類代表某物件屬性值和某控制元件屬性值之間的簡單繫結。如可以將TextBox的Text屬性值繫結到Label的Text屬性值,這樣,當TextBox中的文字被修改的時候,Label的文字也會及時進行修改,如下面的程式碼所示:
label1.DataBindings.Add("Text", textBox1, "Text");
當使用Binding的建構函式建立例項時,必須指定三項內容:
- 要繫結到的控制元件屬性的名稱
- 資料來源
- 資料來源中解析為列表或屬性的導航路徑
其中,資料來源可以為:
- 實現 IBindingList 或 ITypedList 的任何類。包括:DataSet、DataTable、DataView 或 DataViewManager。
- 實現 IList 的任意索引集合類。(必須在建立 Binding 之前建立和填充該集合,並且列表中的所有物件必須為同一型別,否則將引發異常)
- 強型別物件的強型別 IList。
導航路徑可以為空字串(預設將呼叫資料來源的ToString()方法)、單個屬性名稱或用點分隔的名稱層次結構。
名稱層次結構是什麼意思呢?比如我們有一個Company類,它包含Name屬性和Employees屬性(公司所有Employee的集合),而Employee類又包含Name屬性。那麼,如果要將Company的Name屬性繫結到TextBox控制元件的Text屬性,程式碼為:
TextBox1.DataBindings.Add("Text", company, "Name");
如果要繫結Employees的Name屬性,程式碼為:
TextBox1.DataBindings.Add("Text", company, "Employees.Name");
Binding類包含兩個十分重要的事件:Format和Parse,可以建立自定義的格式來顯示資料。具體可以參考MSDN。
問題:如果將TextBox2的Text屬性作為資料來源繫結到TextBox1的Text屬性,那麼修改TextBox1的Text之後,將焦點移動到TextBox2上,其Text值就變為TextBox1的Text值了。這一點如何解決,我還沒有找到比較好的方法,用Parse事件似乎也不行。希望各位朋友們指教。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12639172/viewspace-545374/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 觸發器中控制元件依賴屬性繫結失效觸發器控制元件
- EasyUI 中 DataGrid 控制元件 列 如何繫結物件中的屬性UI控制元件物件
- js 改變 控制元件的屬性值JS控制元件
- 三、動態繫結屬性
- vue中未定義的的物件屬性在頁面中繫結不到值Vue物件
- WPF使用MVVM(一)-屬性繫結MVVM
- Winform 用string型別的屬性來繫結CheckBox薦ORM型別
- 2. Vue語法--插值操作&動態繫結屬性 詳解Vue
- [譯] Angular 屬性繫結更新機制Angular
- JavaScript修改連結a的href屬性值JavaScript
- WPF:MVVM的由來與屬性繫結的過程MVVM
- 第二講、Vue3.x繫結資料、繫結html、繫結屬性、迴圈資料VueHTML
- 聊聊spring boot tomcat jdbc pool的屬性繫結Spring BootTomcatJDBC
- 將href屬性值寫入連結<a>
- jQuery動態修改連結的href屬性值jQuery
- BackgroundImageLayout屬性值
- 修改追加屬性的值
- Vue模板語法、屬性繫結、條件渲染的學習Vue
- js如何獲取給定屬性的屬性值JS
- C#反射設定屬性值和獲取屬性值C#反射
- 關於繫結變數的SQL繫結什麼值變數SQL
- Android控制元件的fitSystemWindows屬性Android控制元件Windows
- CSS 屬性賦值CSS賦值
- 單元測試內實現屬性自動繫結
- 連結<a>為空就使用href屬性值填充
- 【WPF】WPF開發使用者控制元件、使用者控制元件屬性依賴DependencyProperty實現雙向繫結、以及自定義實現Command雙向繫結功能演示控制元件
- javascript獲取物件直接量中的屬性和屬性值JavaScript物件
- petite-vue原始碼剖析-屬性繫結`v-bind`的工作原理Vue原始碼
- 查詢繫結變數的值變數
- SpreadJS 在 Angular2 中支援繫結哪些屬性?JSAngular
- Winform控制元件繫結資料ORM控制元件
- android之 控制元件常用的屬性Android控制元件
- .net自定義控制元件下拉的屬性控制元件
- 數值常用的屬性和方法
- css的border屬性預設值CSS
- ANDROID 控制元件常用屬性Android控制元件
- HTML 布林屬性值HTML
- ajax readystate 屬性值