IComponentConnector 介面
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
提供事件連接和建置動作的基礎結構支援。
public interface class IComponentConnector
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.Guid(4135127431, 59109, 18418, 146, 198, 236, 204, 228, 186, 21, 154)]
struct IComponentConnector
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.Guid(4135127431, 59109, 18418, 146, 198, 236, 204, 228, 186, 21, 154)]
public interface IComponentConnector
Public Interface IComponentConnector
- 屬性
Windows 需求
裝置系列 |
Windows 10 (已於 10.0.10240.0 引進)
|
API contract |
Windows.Foundation.UniversalApiContract (已於 v1.0 引進)
|
範例
Microsoft Visual Studio 針對平行處理上述 「button1」 案例的 IComponentConnector 產生的程式碼可能如下所示:
partial class MainPage : Windows.UI.Xaml.Controls.Page, IComponentConnector
{
[System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Windows.UI.Xaml.Build.Tasks"," 4.0.0.0")]
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
public void Connect(int connectionId, object target)
{
switch(connectionId)
{
case 1:
#line 21 "..\..\MainPage.xaml"
((Windows.UI.Xaml.Controls.Primitives.ButtonBase)(target)).Click += this.button1_Click_1;
#line default
#line hidden
break;
}
this._contentLoaded = true;
}
}
備註
Windows 10 XAML 編譯器針對 Windows 10實作IComponentConnector2所編譯的應用程式。 如有需要,應用程式會回復至 IComponentConnector 以取得相容性。
除非您大幅擴充 XAML 架構或 XAML 設計工具的功能,否則您可能不需要產生或實作 IComponentConnector。 此處的其餘備註旨在將您導向 至應用程式型應用程式模型中 IComponentConnector 的目的,以及說明 Microsoft Visual Studio 基礎結構在一般 XAML 專案中所產生程式碼中 IComponentConnector 的角色。
根據預設,當您在 Microsoft Visual Studio 中將 XAML 頁面新增至 UWP 應用程式專案時,其 BuildAction 是 Page。 當您建置專案時,會處理具有該建置動作的所有專案專案,並產生符合專案程式設計語言選擇的程式碼檔案。 產生的程式碼檔案全都包含其名稱中的字串 「.g」,而且可以在編譯後的專案 obj 資料夾中觀察到。 產生的檔案會實作 應用程式型應用程式模型用來連接應用程式定義之 XAML 和程式碼層面的部分類別定義。 從 XAML 產生部分類別的程式有時稱為 標記編譯。
XAML 中的每個專案,其 XAML 名稱 (x:Name 屬性 或) 套用的 Name 屬性,或宣告的事件處理常式會在產生的程式碼檔案內產生 對 IComponentConnector.Connect 的呼叫。 XAML 建置動作的基礎結構程式碼接著會定義符合專案名稱的欄位。 如果在 XAML 中完成事件連接,建置動作會將事件處理常式附加至 XAML 建立的實例。 欄位會提供存取點,讓應用程式程式碼和基礎結構程式碼都可以用來參考在剖析 XAML 時所建立的物件。
例如,如果 XAML 檔案中有一個名為 「button1」 的 Button 元素,而且它具有參考具名處理常式方法的 Click 事件屬性,Microsoft Visual Studio 就會從 IComponentConnector 介面自動產生 Connect 方法的實作。 connectionId參數是用來辨別呼叫的識別碼權杖,而目標參數則是連接事件和名稱的目標。
方法
Connect(Int32, Object) |
將事件和名稱附加至 XAML 起始的內容。 |