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

首頁 > 編程 > .NET > 正文

WPF的數據綁定詳細介紹

2024-07-10 12:46:17
字體:
來源:轉載
供稿:網友

一、WPF數據綁定的概要

數據綁定:是應用程序 UI 與業務邏輯之間建立連接的過程。 如果綁定正確設置并且數據提供正確通知,則當數據的值發生更改時,綁定到數據的視覺元素會自動反映更改。 數據綁定可能還意味著如果視覺元素中數據的外部表現形式發生更改,則基礎數據可以自動更新以反映更改。

例如:如果用戶編輯 TextBox 元素中的值,則基礎數據值會自動更新以反映該更改。

1. 數據綁定涉及到兩個方面:

一個是綁定源,一個是綁定目標。綁定源即控件綁定所使用的源數據,綁定目標即數據顯示的控件。

2. 對于綁定源,在WPF可以是以下四種:

•CLR對象:可以綁定到CLR類的公開的屬性、子屬性、索引器上。
•ADO.Net對象:例如DataTable、DataView等 。
•XML文件:使用XPath進行解析 。
•DependencyObject:綁定到其依賴項屬性上,即控件綁定控件 。
對于綁定目標,必須是WPF中的DependencyObject,將數據綁定到其依賴項屬性上。

二、      綁定的模式

1.  根據數據流的方向,WPF中的數據綁定分為以下四種:

OneWay 綁定:對源屬性的更改會自動更新目標屬性,但是對目標屬性的更改不會傳播回源屬性。此綁定類型適用于綁定的控件為隱式只讀控件的情況。

TwoWay 綁定:對源屬性的更改會自動更新目標屬性,而對目標屬性的更改也會自動更新源屬性。此綁定類型適用于可編輯窗體或其他完全交互式 UI 方案 。

OneWayToSource 與 OneWay 相反;它在目標屬性更改時更新源屬性。

OneTime綁定:該綁定會導致源屬性初始化目標屬性,但不傳播后續更改。

注釋:如果無需監視目標屬性的更改,則使用 OneWay 綁定模式可避免 TwoWay 綁定模式的系統開銷。

大多數屬性都默認為 OneWay 綁定,但是一些依賴項屬性,通常為用戶可編輯的控件的屬性,如 TextBox 的 Text 屬性和 CheckBox 的 IsChecked 屬性,默認為 TwoWay 綁定。

如果要知道依賴項屬性綁定在默認情況下是單向還是雙向的編程方法可使用 GetMetadata 獲取屬性的屬性元數據,然后檢查 BindsTwoWayByDefault 屬性的布爾值。

示例代碼:

代碼如下:
<Page x:Class="WpfDemo.Page1"

    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

    Title="Page1" HorizontalAlignment="Center">

        <Grid Name="GridTable" Height="360" Background="Silver">

            <Grid.RowDefinitions>

                <RowDefinition></RowDefinition>

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 仪征市| 镇原县| 东方市| 京山县| 海伦市| 宾川县| 万年县| 县级市| 陵川县| 家居| 怀安县| 林口县| 赤壁市| 武夷山市| 新泰市| 伊宁县| 益阳市| 达拉特旗| 高陵县| 枞阳县| 鄂温| 于都县| 炎陵县| 张掖市| 运城市| 增城市| 潜江市| 广汉市| 达孜县| 新昌县| 长海县| 蛟河市| 逊克县| 皋兰县| 德阳市| 乌拉特前旗| 塔河县| 利辛县| 阳山县| 松潘县| 乌兰察布市|