Silverlight
Silverlight 3でMouseWheelがサポートされたためListBoxをスクロールさせようとしましたが、Silverlight 2とは仕様が変わっていることに気付きました。Silverlight 2のListBoxのScrollViewerはVerticalOffsetがドット単位でしたが、Silverlight 3では行単位…
Silverlight 3がリリースされました。標準的に使う以下のライブラリを調査しました。 mscorlib.dll System.dll System.Core.dll System.Net.dll System.Windows.dll System.Windows.Browser.dll System.Xml.dll Silverlight 2と比較して、100個のpublicなク…
Cyanに引き続き、id:takuto_hさんの試作言語YellowをSilverlightに移植しました。Yellowのクラス構成もマップ化して分析しました。動作確認とソースのダウンロードは以下です。 Yellow for Silverlight Yellow クラスマップ YellowもCyanと同様に少しの修正…
id:takuto_hさんのプログラミング言語CyanをSilverlightに移植しました。Cyanのクラス構成もマップ化して分析しました。動作確認とソースのダウンロードは以下です。 Cyan for Silverlight Cyan クラスマップ Cyanの外部でコンソールのエミュレーションを行…
ファイルのプロパティでビルドアクションをコンテンツにするとXAPファイルの中に埋め込まれます。XAPファイルをZIPとして展開するとファイルがそのまま出てきます。プログラムから読み込む方法は以下の通りです。 var uri = new Uri("foo.txt", UriKind.Rela…
Console.WriteLine()やConsole.ReadLine()で入出力を行うコンソールアプリケーションをSilverlightに移植するため、コンソールをエミュレートしてみました。サンプルの電卓プログラムです。 ⇒ 動作確認とソース※Silverlightにデフォルトでフォーカスを与える…
クラスマップのUMLから参照関係をたどれるようにしました。具体的には、あるクラスがどのクラスのメンバとして含まれているかを調べることができます。 ⇒ 動作確認とソースSilverlight 2で開発していますが、先日リリースされたSilverlight 3でも動作を確認…
ListBoxに大量のデータを挿入すると時間が掛かります。挿入過程を表示させて進捗確認できるようにしたかったのですが、イベントキューを処理するまでは表示に反映されません。Windows FormsではApplication.DoEvents()でイベントキューを処理することができ…
クラスのメンバをUMLのクラス図で表示できるようになりました。メソッドやプロパティがどの階層で実装されているのか一目で分かります。クラスやメンバをダブルクリックすると別ウィンドウでMSDNのリファレンスが開きます(ジェネリック型を除く)。 ⇒ 動作…
Silverlightでクラスマップを作成しました。ライブラリの全体像を俯瞰できるかもしれません。 クラス名(名前空間なし)のリスト 継承関係のマップ 名前空間のマップ メンバのリスト マップの操作方法は以下の通りです。 ドラッグ(左ボタン):スクロール …
クラスツリーを横方向にも展開しました。 ⇒ 動作確認とソース今までの縦長のものに比べて見やすくなっていると思います。
昨日のクラスツリーは放射状に線が引かれていましたが、直線状が選択できるようにしました。 ⇒ 動作確認とソース縦に長すぎるためレイアウトを工夫してみます。
Silverlightのクラス継承関係をツリー表示しました。 ⇒ 動作確認とソース ドラッグ(左ボタン):スクロール ダブルクリック(左ボタン):全体表示 ホイール回転:拡大・縮小 あまり継承関係が深くないのは意外でした。
Silverlightは左クリックしかサポートしていません。ホイールはHTMLからイベントを取れば扱えます。右クリックはWindowlessモードにすればHTMLからイベントが取れるようになります。ですがWindowlessモードはIMEがサポートされないなど制限があるため、なる…
XAMLなしの以下のようなコードで、Pageにイベントが来なくてハマりました。 public class Page : UserControl { public Page() { MouseLeftButtonDown += (sender, e) => Debug.WriteLine("Page"); } } 何か置かないといけないのかと思ってCanvasを置いてみ…
ListBoxのアイテム上でクリックしてもMouseLeftButtonDownイベントが起きません。これはListBoxItemの中でイベントが片付けられてしまうためです。WPFの場合はPreviewMouseLeftButtonDownで回避できますが、Silverlightにはありません。そのためListBoxItem…
昨日までWPFでやっていたことをSilverlightに移植しました。⇒ 動作確認とソースWPF版との違いは以下の通りです。 対話環境 ⇒ プログラム Window ⇒ Page MouseDown/MouseUp ⇒ MouseLeftButtonDown/MouseLeftButtonUp プロジェクトの作成方法は以下の通りです。
id:atsushieno:20090325(MoonVorbis)とid:atsushieno:20090329(IMA ADPCM)をVWD 2008 Expressでビルドできるようにしたものを置いておきます。Visual Studio 2008 SP1 用 Microsoft® Silverlight™ 3 Tools Beta 1が必要です。 MoonVorbis-20090325.zip IMA_A…