WPF学習ノート1——XAMLの1

4772 ワード

参考文献:
http://msdn.microsoft.com/zh-cn/library/ms752059(v=vs.10).aspx
『Pro WPF 4.5 in C〹』
一、XAML概況
1.XAMLとは何ですか
XAML(Extenseble Appleication Markp Language、Zammelと読む)は、実用化のために使用されます。
2.XAMLは何のために使いますか
Visual Studioを使ってWPFプログラムを作成すると、あなたが設計したWindowはコードに変換するのではなく、一連のXAMLラベルに変換します。このWPFプログラムを実行すると、これらのラベルコードはユーザーインターフェースのオブジェクトを生成します。
3.なぜXAMLを勉強しますか?
Visual StudioでWindowを設計することができますが、XAMLを勉強すれば、WPFの概念をよりよく学ぶことができます。もっと重要なのは、多くのWPFプログラムをよりよく完成するために、XAMLファイルを手書きで書く必要があります。ある開発者はVisual Studioを通じてUIを設計し、XAMLファイルを編集して細部を調整することが好きです。しかし、場合によってはXAMLファイルを完全に手書きにしたほうがいいかもしれません。
二、XAML基礎
1.基本的な特徴
i.オブジェクト要素(element)
オブジェクトの構文は常に左の括弧()で終わるか、または正の斜線で右の括弧(/>)で終わる。
各XAMLオブジェクト要素は.NETのクラス名と一致します。例えば:
<StackPanel>
  <Button Content="Click Me"/>
StackPanel>
例えば、StockPanelとButtonは2つのオブジェクト要素です。
ii.対象特性(atribute)
オブジェクト要素ラベル内で、属性を割り当て演算子(=)で設定できます。特性の値は常に引用符に含まれる文字列で指定されます。
iii.オブジェクト要素のいくつかの属性については、特性文法は、属性値を提供するために必要なオブジェクトまたは情報を十分に表現できないので、実現することができない。これらの場合には、別の構文、すなわち属性要素文法が使用されてもよい。通常、このマークの内容はタイプのオブジェクト要素であり、属性はその値として使用されます。内容を指定した後は、属性要素を終了するための終了マークが必要です。終了フラグの構文は、タイプ名・属性名>です。例えば:
<Button Background="Blue" Foreground="Red" Content="This is a button"/>
例えば、Buttonのオブジェクト要素には、Background、Foreground、Contottの3つの属性が設定されている。
2.ルート要素、xmlns、xmlns:x
簡単なXAMLファイル:
<Window x:Class="WpfApplication1.Window1"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="Window1" Height="300" Width="300">
    <Grid>
        <Button Content="Button" HorizontalAlignment="Left" Margin="112,79,0,0" VerticalAlignment="Top" Width="75" Click="Button_Click"/>

    Grid>
Window>
i.一つのXAMLファイルは一つの要素しかありません。Window、Page、アプリなどです。ページのためにWindowまたはPageを使用し、外部辞書のためにResource Dictionaryを使用したり、アプリケーション定義のためにAppplicationを使用したりします。例えば、Windowタグが終わったら、XAMLは終了します。
ii.ルート要素はまた、特性xmlnsとxmlns:xを含む。xmlnsはデフォルトのXAML名前空間を指定します。ほとんどのWPFアプリケーションスキームに対して、デフォルトのXAML名前空間はWPF名前空間にマッピングされます。http://schemas.microsoft.com/winfx/2006/xaml/presentation。
ii.xmlns:x特性は、もう一つのXAML名前空間を示し、この名前空間はXAML言語の名前空間をマッピングする。http://schemas.microsoft.com/winfx/2006/xaml。この名前空間はXAML言語構造をサポートする専用のXAML名前空間です。
x:プレフィックスプログラミング構造については、「XAML名前空間(x:)言語機能」を参照してください。http://msdn.microsoft.com/zh-cn/library/ms753327(v=vs.10).aspx)
転載先:https://www.cnblogs.com/flovel/p/3861978.html