mikeo_410


XAMLの種類

  XAMLは利用局面で差があります。良くわかりませんが、手直しする覚悟がないと流用できないのは確かです。

  1. サポートされる名前空間
  2. サポートされるクラス
  3. サポートされるプロパティ
  4. サポートされるイベント

1.Silverlight と .NET Framework

  現在では、.NET Framework は OS の付き物になっているので、XAMLを扱う全てのパソコンで利用可能です。
  これに対して、Silverlight のランタイムは、ユーザがインストールしなければなりません。
  つまり、フルセットのXAMLが無条件で使えるのに、サブセット(Silverlight)を使うにはインストールが必要と言うことです。

  1. XAMLを扱うブラウザ以外のアプリケーションは、.NET Framework が使われる。
  2. ブラウザは、XAMLファイルを開くのに、.NET Framework を使う。
  3. ブラウザは、HTML の object タグで type=application/x-silverlight が要求されると、XAMLマークアップやXAPファイルをSilverlightのコンポーネントに渡す。

  プログラミングする観点では、Silverlightアプリケーション、WPFアプリケーションのいずれかを選んで編集することになるので、「WPFとSilverlightの差」言うことにします。

2.XPSについて

  PDFと同じような目的を持つXPSファイルはXAMLで記述されています。
  「SilverlightとWPFでのXPSファイルの表示
  ワードなどのアプリケーションがXPSファイルを作ります。XAMLも重要です。

3.プログラムでXAMLを扱う

  System.Windows.Markup.XamlReader.Load()
  が、あります。
  XPSファイルを扱うには、
  System.Windows.Xps.Packaging.XpsDocument
  があります。

  XPS由来のXAMLを、Silverlight の System.Windows.Markup.XamlReader.Load()で読み出すと、Canvasの RenderOptions.EdgeMode、ImageBrushの TileMode, Viewbox, ViewboxUnits, Viewport, ViewportUnits、Glyphsの BidiLevel が、エラーになりました。

4.その他の区別

  Silverlight と .NET Framework で、XAMLの記述に差があるのは明らかですが、そのほかにも差があることに気が付きました。
  以下は、
  WPFのXAML > SilverlightのXAML
  の図式に乗らない差異で気が付いたことです。

 区分

 該当箇所

 説明

 Silverlight と WPF の差異   Glyps の FontUri
  •  WPFでは、.odtfを使えない
  • WPFでは、httpプロトコルが使えない。(おそらく内部のフォントに制限)
 Glyps の UnicodeString  WPFでは、数値で文字を指定できない。
 属性間の区切りを誤認してしまう。
 SilverlightでXAMLマークアップを直接開く  Button、CheckBox、TextBox、...  通常、HTMLのobjectタグでXAPを開く。XAMLも開ける。この場合、Buttonを記述すると一切表示が出なくなる。TextBoxは表示されるが入力はできない。入力機能を持つUIエレメントは使えないと考えられる。
     


ホームページ作成 アルパイン 美容外科 札幌 東戸塚 マンション 横浜市 不動産