Silverlight事始め
Silverlightから噂のバージョン2のベータ版がリリースされていたので, ちょっと試してみた. お目当てはもちろんIronPythonとの組み合わせである.
SDK等のインストールは以下のサイトを参考にした.
http://d.hatena.ne.jp/perezvon/20080319/1205920391
ここでは僕がつまづいたポイントをいくつかメモしておく.
- イベントハンドラの指定(追加?)は, 代入ではなくて加算代入で行う.
textBlock.MouseLeftButtonUp = mouseLeftButtonUp # 間違い textBlock.MouseLeftButtonUp += mouseLeftButtonUp # 正しい
- 付属プロパティの設定は、親のコンポーネントから行う. 下の例のほかにもStoryBoardとDoubleAnimationの関係も同じ.
parentCanvas.Children.Add( textBlock ) textBlock.Text = "Hello, World!" # 正しい textBlock.Canvas.Top = 100 # 間違い parentCanvas.SetTop( textBlock, 100 ) # 正しい
- JavaScriptとは違ってcreateFromXamlの代わりにXamlReader.Loadを使う.
from System.Windows import Markup textBlock = Markup.XamlReader.Load( """<TextBlock xmlns="http://schemas.microsoft.com/client/2007" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Text="Hello, World!" > </TextBlock>""" )
はじめたばかりでまだまだ色々とわからないが, Pythonのように動的言語との組み合わせは, やはり開発が楽ちんだ. ドキュメント不足も正式にリリースされれば改善されるだろう.