52
using System; using System Windows; using System; using System Windows; using System.Windows; public class App { using System.Windows; public class App { [STAThread] public static void Main() { [STAThread] public static void Main() { public static void Main() { Application app = new Application(); d d () public static void Main() { Application app = new Application(); d d () Window win = Window(); win.Content = “Hello WPF Code; Window win = Window(); win.Content = “Hello WPF Code; app.Run(win); } app.Run(win); } } } } } Copyright 2006 Archway Inc. Page 1

using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

using System;using System Windows;using System;using System Windows;using System.Windows;public class App {using System.Windows;public class App {[STAThread]public static void Main() {[STAThread]public static void Main() {public static void Main() {Application app = new Application();

d d ()

public static void Main() {Application app = new Application();

d d ()Window win = Window();win.Content = “Hello WPF Code”;Window win = Window();win.Content = “Hello WPF Code”;;app.Run(win);

}

;app.Run(win);

}}}}

}

Copyright 2006 Archway Inc. Page 1

Page 2: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

<Wi d<Wi d<Window xmlns="http://schemas.microsoft.com/

<Window xmlns="http://schemas.microsoft.com/pwinfx/2006/xaml/presentation" xmlns:x="http://schemas microsoft com

pwinfx/2006/xaml/presentation" xmlns:x="http://schemas microsoft comxmlns:x= http://schemas.microsoft.com/winfx/2006/xaml"xmlns:x= http://schemas.microsoft.com/winfx/2006/xaml">Hello XAML>Hello XAMLHello XAML

</Window>Hello XAML

</Window>

Copyright 2006 Archway Inc. Page 2

Page 3: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

Windows Vista 世代のWindows Vista 世代のユーザインターフェイス~開発編~

株式会社アークウェイ

www.archway.co.jp代表取締役社長 .NET コンサルタント

森 英治森屋英治(Hideharu Moriya)Microsoft MVP Solutions Architect

Copyright 2006 Archway Inc. Page 3

Page 4: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

Agendag• 次世代UI開発WPFのコンセプト

WPFの構成要素• WPFの構成要素

• DAL スタイル– 開発スタイル

– アーキテクチャスタイル

言語(XAML) タイ– 言語(XAML)スタイル

• 特徴的な機能タ– スタイル

– リソース

デ タバインド– データバインド

• まとめ

A diCopyright 2006 Archway Inc. Page 4

• Appendix

Page 5: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

I ti I ti Innovation Innovation orororor

CommodityCommodityCommodityCommodityCopyright 2006 Archway Inc. Page 5

Page 6: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

E t i E t i Enterprise Enterprise pApp 2 0=

pApp 2 0=App 2.0=App 2.0=

Experience +Experience +Experience +A

Experience +AAppAppCopyright 2006 Archway Inc. Page 6

pppp

Page 7: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

Copyright 2006 Archway Inc. Page 7

Page 8: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

次世代UI開発のコンセプト• 技術的な統合(これまでの様々な技術の統合)

– 2D {GDI GDI+}– 2D {GDI, GDI+}– UI {User32 , WinForm}– Media {DirectShow}{ }– 3D {Direct3D,OpenGL}

• ベクトルグラフィック– すべてDirect3D経由でレンダリングされる– GPUのフル活用

宣言型プログラミングを可能に• 宣言型プログラミングを可能に– XAML(zamel) UIデザインをXMLで記述可能に

• イノベ ション• イノベーション– エンタープライズアプリケーションの進化– 3Dアプリケーションへの挑戦

Copyright 2006 Archway Inc. Page 8

3Dアプリケ ション の挑戦

Page 9: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

WPFの構成要素

ドキュメントサービス ユーザーインターフェースサービスドキュメントサ ビス

アプリケーションサービス コントロールデータバインディング

ユ ザ インタ フェ スサ ビス

XPSドキュメント

パッケージングサービス デプロイメントサービス レイアウトディング

2D オーディオイメージング XAML

メディアサービス 基本サービス

3Dテキスト

ビデオ特殊効果

アニメ ション

アクセシビリティ

入力およびイベント処理

合成エンジン

アニメーション

プロパティシステム

入力およびイベント処理

Copyright 2006 Archway Inc. Page 9

Page 10: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

DAL スタイル

D l t St l D l t St l Development Style Development Style

A hit t St l A hit t St l Architecture Style Architecture Style

L St lL St lLanguage StyleLanguage StyleCopyright 2006 Archway Inc. Page 10

Page 11: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

開発スタイル

Copyright 2006 Archway Inc. Page 11

Page 12: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

開発スタイルDesigner Developer

Emotional ConnectionLook, behavior, data visualization, usability,

brand impact

Functional CapabilitiesDeployment, function, data connection and

integrity, IT process, security

PaperC++C#

VB.NET

PaperJPG / TIFF

MOV / WMVPSDPPT

XAMLPPT

Copyright 2006 Archway Inc. Page 12

Page 13: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

プロジェクトタイプ

• Windows Application (WPF)• XAML Brower Application (WPF)

Copyright 2006 Archway Inc. Page 13

Page 14: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

アーキテクチャスタイル

Copyright 2006 Archway Inc. Page 14

Page 15: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

Application Architecture For .NetApplication Architecture For .Net

ユーザーユーザー

ユーザーインターフェイスコンポーネントユーザーインターフェイスコンポーネント

運運

ユーザーインターフェイスプロセスコンポーネントユーザーインターフェイスプロセスコンポーネント

サ ビスインタ フェイスサ ビスインタ フェイス通信通信

運用管理

運用管理

サービスインターフェイスサービスインターフェイス

ビジネスビジネスワークフローワークフロー

ビジネスビジネスコンポーネントコンポーネント

ビジネスビジネスエンティティエンティティワ クワ ク ンポ ネントンポ ネント ンティティンティティ

データアクセスデータアクセスロジックコンポーネントロジックコンポーネント

サービスエージェントサービスエージェントロジックコンポ ネントロジックコンポ ネント

デ タソ スデ タソ ス サ ビスサ ビス

Copyright 2006 Archway Inc. Page 15

データソースデータソース サービスサービス

Page 16: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

Application Architecture For .Net With WPF

Application Architecture For .Net With WPFWith WPFWith WPF

ユーザーユーザー

ユーザーインターフェイスコンポーネントユーザーインターフェイスコンポーネント

DTODTOデータ転送データ転送オブジェクトオブジェクト

XAMLBrowserApplicationXAMLBrowserApplication((WPFWPF))WindowsWindowsApplicationApplication((WPFWPF))

運運

ユーザーインターフェイスプロセスコンポーネントユーザーインターフェイスプロセスコンポーネント

サ ビスインタ フェイスサ ビスインタ フェイス

オブジェクトオブジェクト

DataSetDataSet通信通信

運用管理

運用管理

サービスインターフェイスサービスインターフェイス

ビジネスビジネスワークフローワークフロー

ビジネスビジネスコンポーネントコンポーネント

ビジネスビジネスエンティティエンティティ

DataTableDataTableワ クワ ク ンポ ネントンポ ネント ンティティンティティ

データアクセスデータアクセスロジックコンポーネントロジックコンポーネント

サービスエージェントサービスエージェント

カスタムカスタムオブジェクトオブジェクト

ロジックコンポ ネントロジックコンポ ネント

デ タソ スデ タソ ス サ ビスサ ビス

XMLXML

Copyright 2006 Archway Inc. Page 16

データソースデータソース サービスサービス

Page 17: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

アーキテクチャの要素

• アーキテクチャの決定は、まず必要な要素(関心)を選択する心)を選択する。

• 非機能要件のトレードオフ–パフォーマンス、セキュリティ、配置条件

• 要素が多ければ多いほど開発コストは増大し• 要素が多ければ多いほど開発コストは増大し、配置、運用コストも増大する。

対象となる開発で必要な分だけの要素を選択す• 対象となる開発で必要な分だけの要素を選択する。

ザイ タ イ–ユーザインターフェイス

–データアクセス

Copyright 2006 Archway Inc. Page 17

• シンプルなアーキテクチャを採用

Page 18: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

アーキテクチャの傾向と対策

• エンタープライズアプリケーションは、ほとんどデタベ スからの情報取得 更新ータベースからの情報取得、更新

• データバインド可能なオブジェクトの選択

• データストアからの取り出しの容易性• データストアからの取り出しの容易性–データセット

デ タテ ブ–データテーブル

• 注意点:なるべく分散させない–分散トランザクション、分散オブジェクト

–本当に必要なときのみ

Copyright 2006 Archway Inc. Page 18

本当に必要なときのみ

Page 19: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

言語(XAML)スタイル

Copyright 2006 Archway Inc. Page 19

Page 20: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

WPF開発言語

• .NETに対応している言語すべて

–C#–VB.NETVB.NET– IronPython–…–そして、XAML(eXtensible Application Markup

Language)

Copyright 2006 Archway Inc. Page 20

Page 21: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

XAML

• XAML( eXtensible Application Markup Language)–HTMLの開発体験をWinFormに!HTMLの開発体験をWinFormに!

• 言語としてのXAMLパイ され 動作–コンパイルされて動作

–言語の範囲は、マークアップの範囲に依存し、すべて対応しているわけではない

–パーシャルクラスの理解シャルクラスの理解

–WF (Workflow Foundation)にも適用されている

Copyright 2006 Archway Inc. Page 21

Page 22: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

DesignDesignDesignDesign<XAML><XAML><XAML><XAML>

CodeCodeCodeCodeCopyright 2006 Archway Inc. Page 22

Page 23: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

XAML & C#Code<Button

Foreground “Green” Foreground=“Green” FontSize=“20pt”>

XAML Button</Button></Button>

Button button = new Button();Button.Foreground = Brushes.Green;g ;Button.FontSize = 20;Button Content “Code Button”;

Copyright 2006 Archway Inc. Page 23

Button.Content = “Code Button”;

Page 24: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

System.Windows.Control様々なUIコントロール様々なUIコントロール

Copyright 2006 Archway Inc. Page 24

Page 25: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

Copyright 2006 Archway Inc. Page 25

Page 26: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

スタイル

Copyright 2006 Archway Inc. Page 26

Page 27: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

スタイル

• 概念は、HTMLのスタイルシートと同様だが、WPFにおける“スタイル”は、リソース、スタイル、テンプレート、トリガ、ストーリボードを統合するテンプレ ト、トリガ、 ト リボ ドを統合する広い概念の用語。

リソ スに配置して利用• リソースに配置して利用。

<Style ><Style …><Setter … />

<EventSetter /><EventSetter … /></Style>

Copyright 2006 Archway Inc. Page 27

Page 28: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

スタイルの設定

Copyright 2006 Archway Inc. Page 28

Page 29: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

トリガーの利用

Copyright 2006 Archway Inc. Page 29

Page 30: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

複数コントロールへの適用

Copyright 2006 Archway Inc. Page 30

Page 31: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

リソース

Copyright 2006 Archway Inc. Page 31

Page 32: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

リソース

• ローカルで利用するリソース。

–Visual Studioで一般的に使われるリソースと若干異なる

• ResourceDictionaryを型とするキーとオブジェクトからなるリソ スディクショナリェクトからなるリソースディクショナリ

• XAMLでは、すべての要素、Applicationなどに配置可能

• ResouceDictionaryをXAMLとして別ファイル• ResouceDictionaryをXAMLとして別ファイルに分離することも可能

Copyright 2006 Archway Inc. Page 32

Page 33: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

Applicationリソースの利用pp

A lApp.xaml

Window1.xaml

様々な要素Window,Panel,Control、Applicationにリソースを配置できるpp リ を 置

Copyright 2006 Archway Inc. Page 33

Page 34: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

リソースディクショナリの作成リソースディクショナリの作成

Styles.xamly

Copyright 2006 Archway Inc. Page 34

Page 35: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

リソースディクショナリの参照リソースディクショナリの参照

Copyright 2006 Archway Inc. Page 35

Page 36: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

データバインド

Copyright 2006 Archway Inc. Page 36

Page 37: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

単純なバインド

CodeBinding bind = new Binding();bind.Source = bar;bind Path = new PropertyPath(ScrollBar ValueProperty);

XAML

Copyright 2006 Archway Inc. Page 37

bind.Path new PropertyPath(ScrollBar.ValueProperty);label.SetBinding(Label.ContentProperty, bind);

Page 38: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

Binding Modeg<Windowxmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"><Canvas>

<TextBox Name="theTextBox" Text="Hello" />

<TextBox Canvas.Top="25"Text="{Binding ElementName=theTextBox, Path=Text, Mode=TwoWay}" />

</Canvas>/</Window>

バインディングモード 説明

TwoWay バインド先のコントロールまたはバインドのソースからの変更を、双方向でもう一方に移動する (これが既定モード)。

OneWay ソースからの変更だけを コントロールに移動します ソースで変更が発生するとOneWay ソ スからの変更だけを、コントロ ルに移動します。 ソ スで変更が発生すると、バインド先のコントロールのデータが変更される。

OneTime 起動時にのみデータがバインドされ、コントロールに初めてデータが書き込まれた後は、ソースの変更は無視される。

Copyright 2006 Archway Inc. Page 38

は、ソ スの変更は無視される。

Page 39: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

バインドのタイミングの制御• バインドによって変更がプッシュされるタイミングも指定できる。

UpdateSourceTrigger タイプを指定することにより バインドUpdateSourceTrigger タイプを指定することにより、バインドが特定のタイミングでしか変更を行わないように指定できる

• UpdateSourceTrigger プロパティは、ソースを変更によって更新するタイミングを指定する。

• Mode=TwoWayのバインド (既定) と併用する場合にのみ有効効

{Binding ElementName=theTextBox, Path=Text, UpdateSourceTrigger=LostFocus}

UpdateSourceTrigger 説明

Explicit BindingExpression UpdateSource メソッドを明示的に呼び出した場合のみ ソースExplicit BindingExpression.UpdateSource メソッドを明示的に呼び出した場合のみ、ソース

が更新される。

LostFocus バインドされたコントロールがフォーカスを失ったとき、ソースが更新される。

PropertyChanged プロパティが変更されるたびに 変更がソ スに更新されます これが既定の動作

Copyright 2006 Archway Inc. Page 39

PropertyChanged プロパティが変更されるたびに、変更がソースに更新されます。 これが既定の動作。

Page 40: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

XAMLのデータバインド

• ほとんどのアプリケーションでは、XMLやオブジェクト、デ タ セ トなどにバイ ドしているデーターセットなどにバインドしている

• これまでの.NETのデータバインドでは、バインディングの形態が限定されていて完全なオブジェクトとの連携や拡張が困難だった

• WPFでは上記の問題にチャレンジしている

• 現在対応しているデータプロバイダ• 現在対応しているデ タプロバイダ– XmlDataProvider

• XMLとのバインドXMLとのバインド

– ObjectDataProvider• .NETオブジェクトとのバインド

Copyright 2006 Archway Inc. Page 40

Page 41: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

XMLDataProvider<StackPanel><StackPanel.Resources><XmlDataProvider x:Key="FavoriteColors"><x:XData><Colors xmlns=""><Colors xmlns ><Color>Blue</Color><Color>Black</Color></Colors></Colors></x:XData></XmlDataProvider></StackPanel Resources></StackPanel.Resources><TextBlock HorizontalAlignment="Center“ FontWeight="Bold">XML Example </TextBlock>

Li B Wid h "200" H i h "300" <ListBox Width="200" Height="300" ItemsSource="{Binding Source={StaticResource

FavoriteColors},XP th /C l /C l }" /Li tB

Copyright 2006 Archway Inc. Page 41

XPath=/Colors/Color}"></ListBox></StackPanel>

Page 42: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

XMLDataProviderRSSとのバインドRSSとのバインド

URLあるいは、ファイルパスも可

Copyright 2006 Archway Inc. Page 42

Page 43: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

DetaContext/DataTemplate

DetaContextを利用するとSourceを設定する

必要がなくなる

Copyright 2006 Archway Inc. Page 43

Page 44: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

RSSリーダ

Copyright 2006 Archway Inc. Page 44

Page 45: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

ObjectDataProviderj

Copyright 2006 Archway Inc. Page 45

Page 46: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

ObjectDataProviderjWindow.xaml.cs

Copyright 2006 Archway Inc. Page 46

Page 47: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

まとめ

• コンセプト

• WPF構成要素

• DALスタイルDALスタイル–開発スタイル

アーキテクチャ–アーキテクチャ

–言語(XAML)特徴的な機能• 特徴的な機能–スタイル

–リソース

–データバインド

Copyright 2006 Archway Inc. Page 47

Page 48: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

I ti I ti Innovation Innovation orororor

CommodityCommodityCommodityCommodityCopyright 2006 Archway Inc. Page 48

Page 49: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

Copyright 2006 Archway Inc. Page 49

Page 50: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

ご静聴ご静聴ご静聴ご静聴

ありがとうありがとうありがとうありがとう

ございましたございましたございました株式会社アークウェイ

ございました株式会社アークウェイ株式会社ア クウェイ

森屋英治

株式会社ア クウェイ

森屋英治

Copyright 2006 Archway Inc. Page 50

森屋英治森屋英治

Page 51: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

Appendix

Copyright 2006 Archway Inc. Page 51

Page 52: using System; public class App { Application app = …...• 次世代UI開発WPFのコンセプト • WPFの構成要素の構成要素 •DALスタイル – 開発スタイル

XAML省略した表記<Canvas>

<TextBox Name="theTextBox" Text="This is TextBox" /><TextBlock Canvas.Top="25"

Text="{Binding ElementName=theTextBox,Path=Text}” /></Canvas>/CanvasElementを{}の中に属性、値を,でつなげていく省略した表記。

先ほどの表記先ほどの表記

<Canvas><TextBox Name="theTextBox" Text="This is TextBox" /><TextBlock Canvas Top="25"><TextBlock Canvas.Top= 25 >

<TextBlock.Text><Binding ElementName="theTextBox" Path="Text" />/T tBl k T t</TextBlock.Text>

</TextBlock></Canvas>

Copyright 2006 Archway Inc. Page 52