重要この機能は引き続き試験段階であり、既定では無効になっています。詳細については、「試験機能とプレビュー機能」を参照してください。features.コンポーネントは、アプリの開発者がアプリまたはアプリで使用するカスタムコントロールを作成できるように、キャンバスアプリの再利用可能な構成要素です。カスタムプロパティなどの高度な機能により、コンポーネントの複雑な機能が有効になります。この記事では、コンポーネントの概念といくつかの例について説明します。examples.コンポーネントは、類似したコントロールパターンを持つ大規模なアプリを構築する場合に役立ちます。コンポーネント定義を更新すると、アプリ内のすべてのインスタンスに変更が反映されます。コントロールをコピーして貼り付けるのではなく、オーバーヘッドが重複するため、1つ以上のコンポーネントを使用してパフォーマンスを向上させることもできます。コンポーネントは共同開発を促進し、組織内のルックアンドフィールを標準化します。選択して機能を有効にします。強化されたアプリのレンダリングも有効にします。メニューまたは次の図に示すように、コンポーネントを作成できます。この一覧には、アプリで定義されたコンポーネントが、作成時刻順に並べ替えて表示されます。time.どの方法を使用するかにかかわらず、空のキャンバスが表示され、コンポーネント定義の一部としてコントロールを追加できます。キャンバスでコンポーネントを編集する場合は、他のアプリ画面や他のアプリで同じコンポーネントのインスタンスを更新します。メニューで、既存のコンポーネントの一覧からコンポーネントを選択できます。コンポーネントを選択すると、コントロールを挿入するのと同様に、コンポーネントのインスタンスが画面に挿入されます。control.適用範囲Scopeコンポーネントは、インターフェイスとしてプロパティを持つカプセル化されたブラックボックスと考えることができます。コンポーネントの外部からコンポーネント内のコントロールにアクセスすることはできません。コンポーネント内からコンポーネントの外部にあるものを参照することはできません。試行すると、エラーが表示されます。スコープの制限により、コンポーネントのデータコントラクトをシンプルかつまとまったものに保ち、特にアプリ間でシームレスなコンポーネント定義の更新を可能にします。コンポーネントのデータコントラクトを更新するには、1つまたは複数のカスタムプロパティを作成します。Set関数を使用して、コンポーネントの変数を作成および更新できます。これらの変数のスコープはコンポーネントに限定されますが、カスタム出力プロパティを利用してコンポーネントの外部からアクセスすることができます。ダイアログボックスには、編集権限のあるコンポーネントが含まれているすべてのアプリが一覧表示されます。選択して、そのアプリ内のすべてのコンポーネントの最新の公開バージョンをインポートします。少なくとも1つのコンポーネントをインポートしたら、必要のないコピーを編集して削除することができます。need.コンポーネントをエクスポートする場合は、別のアプリにインポートできるローカルファイルを作成します。同じコンポーネントの変更バージョンがアプリに含まれている場合は、変更されたバージョンを置き換えるか、インポートをキャンセルするかを決定するように求められます。properties1つ以上のカスタムプロパティを作成すると、コンポーネントは入力値を受け取り、データを出力できます。これらのシナリオは高度なものであり、数式やバインドコントラクトについて理解する必要があります。contracts.入力プロパティは、コンポーネントがコンポーネントで使用するデータを受け取る方法を示します。タブに入力プロパティが表示されます。他のコントロールで標準プロパティを構成する場合と同様に、式または数式を使用して入力プロパティを構成できます。その他のコントロールには、テキスト入力コントロールの既定のプロパティなどの入力プロパティがあります。control.出力プロパティは、データまたはコンポーネントの状態を出力できます。ギャラリーコントロールで選択されたプロパティは、出力プロパティです。出力プロパティを作成するときに、コンポーネントの状態を参照できる他のコントロールを指定できます。state.このチュートリアルでは、これらの概念について詳しく説明します。componentこの例では、このグラフィックに似たメニューコンポーネントを作成します。ここでは、テキストを変更し、複数の画面、アプリ、またはその両方で使用できます。空のアプリを作成します。menucomponentを入力するか貼り付けます。各ボックスに、項目を入力するか貼り付けます。ComponentName)。タブに表示名が表示されます。わかりやすい表示名は、このプロパティの目的を理解するのに役立ちます。タブでこのプロパティの表示名をポイントすると、ツールヒントに説明が表示されます。Create.Itemsプロパティは、指定したデータ型に基づいて既定値に設定されますが、必要に応じて値を設定することもできます。テーブルまたはレコードのデータ型を指定した場合は、コンポーネントに入力するデータスキーマと一致するようにItemsプロパティの値を変更することができます。この場合は、文字列のリストに変更します。タブでプロパティの名前を選択した場合は、数式バーでプロパティの値を設定できます。タブでプロパティの値を編集することもできます。pane.コンポーネントのItemsプロパティを次の数式に設定します。formula:Table({Item:"SampleText"})コンポーネントで、空の垂直ギャラリーコントロールを挿入します。(既定では)、そのプロパティの値を次の式に設定します。プロパティを読み取って依存します。プロパティを1に設定し、そのtemplatesizeプロパティを50に設定します。50.ギャラリーコントロールのテンプレートで、ラベルコントロールを追加します。control.次に、コンポーネントを画面に追加し、表示するコンポーネントの文字列のテーブルを指定します。show.左側のナビゲーションバーで、画面の一覧を選択し、既定の画面を選択します。MenuComponent.新しいコンポーネントには、既定でMenuComponent_1という名前が付けられます。default.MenuComponent_1のItemsプロパティを次の数式に設定します。{Item:"Help"})このインスタンスはこのグラフィックに似ていますが、各インスタンスのテキストおよびその他のプロパティをカスタマイズできます。instance.ここまでで、コンポーネントを作成してアプリに追加しました。次に、ユーザーがメニューで選択した項目を反映する出力プロパティを作成します。