逐步解說:使用 DesignInstance 繫結至設計工具中的資料
本逐步解說示範如何在設計階段,使用 WPF Designer for Visual Studio 為執行階段所指派的資料內容建立資料繫結。 若要建立資料繫結,請使用資料繫結產生器建立特殊的設計階段資料內容,並將 DesignInstance 設定為商務物件型別。 DesignInstance 是設計階段屬性。
在這個逐步解說中,您會執行下列工作:
建立專案。
建立 Customer 類別商務物件。
將 TextBox 控制項的資料繫結至資料內容中 Customer 類別的設計階段執行個體。
完成這些工作之後,您就會擁有在執行階段繫結至商務物件的文字方塊。 資料繫結是在 WPF Designer中設定。
注意
根據您目前使用的設定或版本,您所看到的對話方塊與功能表指令可能會與 [說明] 中描述的不同。若要變更設定,請從 [工具] 功能表中選擇 [匯入和匯出設定]。如需詳細資訊,請參閱 Visual Studio 設定。
必要條件
您需要下列元件才能完成此逐步解說:
- Visual Studio 2010.
建立專案
第一個步驟是建立 WPF 應用程式專案並啟用設計階段屬性。
若要建立專案
在 Visual Basic 或 Visual C# 中,建立名為 DataBindingDemo 的新 WPF 應用程式專案。 如需詳細資訊,請參閱 HOW TO:建立新的 WPF 應用程式專案。
MainWindow.xaml 隨即在 WPF Designer中開啟。
在 [設計] 檢視中,按一下 MainWindow 右下角的原始大小調整標籤 (),將原始大小設定為自動調整大小。
在 [XAML] 檢視中,設計工具會加入 d 命名空間對應,讓您可以存取諸如 DesignHeight 和 DesignInstance 等設計階段屬性。
建立商務物件
接下來,請建立商務物件。 商務物件是簡單的 Customer 類別,具有 FirstName 和 LastName 屬性。
注意
商務物件型別不一定要是可以建立並用於設計階段資料繫結的型別。例如,您可以在設計階段繫結至抽象類別。
若要建立商務物件
將名為 Customer 的新類別加入至專案。 如需詳細資訊,請參閱 How to: Add New Project Items。
以下列程式碼取代自動產生的程式碼。
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace DataBindingDemo { public class Customer { public string FirstName { get; set; } public string LastName { get; set; } } }
設定設計階段資料內容
若要使用資料繫結產生器建立資料繫結,請建立特殊的設計階段資料內容,並將 DesignInstance 設定為商務物件型別。
若要設定設計階段資料內容
在 WPF Designer中開啟 MainWindow.xaml。
在 [XAML] 檢視中,將下列命名空間對應加入至 MainWindow 的開頭標記。 如需詳細資訊,請參閱 HOW TO:將命名空間匯入 XAML。
xmlns:local="clr-namespace:DataBindingDemo"
以下列 XAML 取代 Grid 項目的開頭標記。
<Grid d:DataContext="{d:DesignInstance Type=local:Customer}" Name="_grid">
這個 XAML 會建立設計階段資料內容,並讓 Customer 類別能夠用來建立資料繫結。
建置方案。
建立資料繫結
現在您可以使用資料繫結產生器,建立 Customer 商務物件的資料繫結。 下列程序示範如何將 TextBox 控制項繫結至 Customer 物件的 FirstName 屬性。
若要建立資料繫結
在 [屬性] 視窗中,捲動到 Text 屬性。
在左欄的邊緣,按一下 [屬性標記] ()。
功能表隨即出現。
提示
您也可以用滑鼠右鍵按一下此資料列,以便顯示功能表。
按一下 [套用資料繫結]。
資料繫結產生器隨即顯示,並開啟 [路徑] 窗格。
按一下 [FirstName],然後按 ENTER。
在 [XAML] 檢視中,Text 屬性會具有 Customer 型別之 FirstName 屬性的資料繫結。
設定執行階段資料內容
最後,您會指派執行階段資料內容。 您在設計階段建立的資料繫結,不需要在 XAML 或程式碼中進行任何變更,即可用於執行階段。
若要設定執行階段資料內容
在程式碼編輯器中開啟 MainWindow.xaml.cs 或 MainWindow.xaml.vb。
將自動產生的 MainWindow 建構函式替換成下列程式碼。
public MainWindow() { InitializeComponent(); Customer c = new Customer(); c.FirstName = "Brenda"; c.LastName = "Diaz"; this._grid.DataContext = c; }
按下 F5 執行應用程式。
文字方塊隨即顯示執行階段所建立之 Customer 物件的第一個名字。
後續步驟
- 您可以繫結到範例設計階段資料,以協助您在能夠取得實際資料時,建構執行階段的正確配置行為。 如需詳細資訊,請參閱逐步解說:使用 WPF 設計工具中的範例資料。