WPF單向綁定正確創(chuàng)建方法介紹
WPF開發(fā)框架是由微軟公司于06年左右開發(fā)的一款專門處理圖形界面顯示的開發(fā)工具。開發(fā)人員可以使用它來輕松實(shí)現(xiàn)功能需求,提高開發(fā)效率。在這里就為打家介紹一下WPF單向綁定的創(chuàng)建方法。#t#
1. 定義一個(gè)ObjectDataProvider,命名為”ContactList”。把它放在MainWindow.xaml文件,Window這個(gè)元素的Resources里,作為這個(gè)文件的一個(gè)資源。ObjectDataProvider的類型名設(shè)為ContactList集合類的全名(包括命名空間)。除此之外,MethodName屬性被設(shè)值為程序集的名字:AddressBook。請(qǐng)確保將Window.Resource這段元素插入到Grid的定義之前。
- < Window.Resources>
- < ObjectDataProvider
x:Key="ContactList" - MethodName="AddressBook.
ContactList,AddressBook" /> - < /Window.Resources>
2. 利用Styles,您的應(yīng)用、文檔、或UI設(shè)計(jì)器可以將產(chǎn)品的風(fēng)格統(tǒng)一化。數(shù)據(jù)模板則可以用來定義數(shù)據(jù)的顯示外觀。為了配置聯(lián)系人列表數(shù)據(jù)的UI,請(qǐng)定義一個(gè)數(shù)據(jù)模板,命名為“ContactNameTemplate”,將ContactList里面聯(lián)系人對(duì)象的FirstName屬性綁定到一個(gè)TextBlock上。
- < Window.Resources>
- < ObjectDataProvider
x:Key="ContactList"- MethodName="AddressBook.
ContactList,AddressBook" />- < DataTemplate x:Key=
"ContactNameTemplate" >- < TextBlock Text="
{Binding Path=FirstName}" />- < /DataTemplate>
- < /Window.Resources>
3. WPF單向綁定創(chuàng)建到這里之后,我們可以為聯(lián)系人的ListBox指定ItemsSource并賦給它ContactNameTemplate。
- < ListBox Name="allContacts"
- SelectionChanged="ListItemSelected"
- ItemsSource="{Binding }"
- ItemTemplate="{DynamicResource
ContactNameTemplate}"- IsSynchronizedWithCurrentItem="True">
- < ListBox.ContextMenu>
- < ContextMenu>
- < MenuItem Header="Add a Contact"
- Click="LaunchNewContactWizard"/>
- < MenuItem Header="Add a Group"
- Click="NotImplementedMsg"/>
- < /ContextMenu>
- < /ListBox.ContextMenu>
- < /ListBox>
4. 接下來的WPF單向綁定創(chuàng)建工作就剩下設(shè)定DockPanel_LeftPane的數(shù)據(jù)上下文的值了。請(qǐng)將它設(shè)為Property Bag里面的ContactList。以下這行代碼要放在MainWindow.xaml.cs文件中WindowLoaded方法里。
- DockPanel_LeftPane.DataContext =
Application.Current.Properties
["ContactList"];
5. 構(gòu)建并運(yùn)行您的應(yīng)用程序。這時(shí)候聯(lián)系人的信息應(yīng)該可以顯示在左邊面板的ListBox里了。