1. ホーム
  2. Web プログラミング
  3. XML/RSS
  4. WMLチュートリアル

XAMLチュートリアル 翻訳者:SixSix 構文への導入

2022-01-17 21:33:26
[このトピックはリリース前のドキュメントであり、将来のリリースで変更される可能性があります] 。 
XAML構文入門
/
この記事では、いくつかの異なる方法を使用して、XAMLでオブジェクトを作成し、そのプロパティを設定する方法について説明します。
トピックスには、以下の項目があります。
XAMLとは?  
オブジェクトの宣言 
プロパティを設定する 
その他の関連項目
XAMLとは
XAMLは宣言型言語です。XAMLマークアップを使用して、視覚的なUIプリミティブを作成することができます。 その後、別のファイルで JavasScript を使用して、XAML で宣言したオブジェクトを操作し、いくつかのイベントに応答することができます。XMLベースの宣言型言語であるため、プロトタイプから製品までのインターフェイスを作成する際、特にWebデザインの背景知識やスキルを持つ人々にとって非常に直感的なものとなっています。 {XAML
XAMLファイルは、通常、接尾辞が.xamlのXMLファイルです。以下は、典型的なSilverlightのXAMLファイルの例です。.XAML

  xmlns="http://schemas.microsoft.com/client/2007"
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">。
{長方形
    幅="100"
    高さ="100"
    塗りつぶし="青"/>。
{{/長方形
.
オブジェクトの宣言
XAMLでは、オブジェクトを宣言し、そのプロパティを設定する方法がいくつかあります: :
Object要素の構文。XMLのように開閉タグを使用してオブジェクトを宣言します。この方法でルート要素を宣言し、その属性値を設定することができます。 
属性の構文。インラインを使用してオブジェクトを宣言します。属性の値を設定するために、このメソッドを使用することができます... 
Object要素の構文
Object要素の構文を使用してオブジェクトを宣言する典型的な方法です。まず、2つのXML要素タグを作成する必要があります。
{オブジェクト名
{{/オブジェクト名
... objectName は、インスタンス化したいオブジェクトの名前です。次の例では、Object 要素の構文を使用して Canvas を宣言しています。


Canvasのような一部のオブジェクトは、他のオブジェクトを含むことができます。XAML

{長方形

便宜上、オブジェクトが他のオブジェクトを含まない場合は、1つのタグのみで記述することができます XAML

{長方形
{{/長方形

Attribute構文によるオブジェクトの宣言
属性の構文については、次項の「属性の設定」を参照してください。
属性を設定する
object要素構文を使用すると、オブジェクトのプロパティを宣言時に設定することができます。 XAMLでは、プロパティを設定する方法として、属性構文を使用する方法と、property要素構文を使用する方法とがあります。
Attribute構文による属性の設定
{{objectnameproperty="propertyvalue"
... property は、propertyValue の値を代入するプロパティの名前です。 次の例は、属性構文を使用して、矩形の幅、高さ、および塗りつぶしを設定する方法を示しています。

{長方形                                   
    幅="100" 高さ="100" 塗りつぶし="青"
{{/長方形                                   
.
Property Element Syntaxを使用してプロパティを設定します。
プロパティによっては、property要素の構文を使って設定することができます。 欲しいプロパティを記述するために、例えば、XML要素を作成するのです。 例えば、
{オブジェクト名
{{objectname.property}{オブジェクト名.プロパティ
{プロパティーバリュー
{{/objectname.property}{/オブジェクト名.プロパティ
{{/オブジェクト名
... property は、propertyValue の値を代入するプロパティの名前です。 次の例は、property 要素の構文を使用して、SolidColorBrush.XAML を使用して Rectangle の Fill を設定する方法を示しています。

{長方形
    幅="100" 
    高さ="100">。 
{{rectangle 

{{/rectangle. 

コンテンツ要素構文によるプロパティの設定
属性が要素の構文をサポートしている場合、属性名を無視して属性値を直接objectタグにインラインで記述することができる場合があります。これがコンテンツエレメントの構文です。次の例は、TextBlockのText属性の値を、Text属性を指定せずに設定するものですxaml

/XAML
      こんにちは。 {って感じです。

暗黙のコレクション構文でプロパティを設定する
プロパティがコレクションとして表現され、コレクション名を無視してプロパティ値を直接設定できる場合があります。これが暗黙のコレクション構文です。次の例では、LinearGradientBrushのGradientStopCollectionを無視して、GradientStopオブジェクトを直接指定する方法を示しています。 GradientStopCollectionは、最初のLinearGradientBrushに含まれていますが、2番目のLinearGradientBrushでは無視されます。

      Canvas.Left="0" Canvas.Top="30">
{{rectangle.

{{lineargradientbrush.gradientstops
{未定義
{グラデーションストップ・コレクション
{グラディエントストップ
{グラデーションストップ
{{/lineargradientbrush.gradientstops}{/lineargradientbrush.gradientstops}。

{{/rectangle。
{長方形
      Canvas.Left="100" Canvas.Top="30">
{{rectangle.

{{lineargradientbrush.gradientstops
{未定義
                 が省略されます。-->
{グラデーションストップ
{グラデーションストップ
{{/lineargradientbrush.gradientstops}{/lineargradientbrush.gradientstops}。

コレクション要素タグとアトリビュート要素タグの両方を無視できる場合もあります: :XAML

      Canvas.Left="200" Canvas.Top="30">
{{rectangle.

{グラディエントストップ
{グラデーションストップ
{リニアグラデーションブラシ
Attribute Element SyntaxやProperty Element Syntaxを使用して属性を設定する場合
すべての属性はattributeまたはproperty要素の構文をサポートし、いくつかの属性は他のメソッドをサポートしています。 属性がサポートするメソッドの設定は、属性値で認識されるオブジェクトの種類に依存します。
属性値がDouble、Integer、Stringのような単純な型の場合、属性構文のみがサポートされます。 次の例は、属性構文を使用して矩形の幅を設定する方法を示しています。Widthプロパティは、その値がDouble型であるため、属性構文がサポートされています。 XAML

属性構文を使用できるかどうかは、属性を設定するために使用しているオブジェクトが属性構文をサポートしているかどうかによります。SolidColorBrush を使用して Fill プロパティを設定すると、SolidColorBrush が属性構文をサポートしているため、属性構文がサポートされます。XAML
.
要素構文を使ってプロパティを設定できるかどうかは、使用しているオブジェクトがそれをサポートしているかどうかによって決まります。オブジェクトがオブジェクト要素構文に対応している場合のみ、プロパティはプロパティ要素構文に対応します。次の例では、Rectangle の Fill を設定するために property 要素構文を使用しています。SolidColrBrush を使用して Fill を設定する場合、SolidColorBrush が属性構文をサポートしているため、属性構文がサポートされます。 XAML
.
{{rectangle.fill
{ソリッドカラーブラシ
{ソリッドカラーブラシ {{/rectangle.fill
{{/rectangle.
参照 
Silverlightオブジェクトモデル
{{/rectangle.
{{/objectnameproperty="propertyvalue"