かずきのBlog@hatena

すきな言語は C# + XAML の組み合わせ。Azure Functions も好き。最近は Go 言語勉強中。日本マイクロソフトで働いていますが、ここに書いていることは個人的なメモなので会社の公式見解ではありません。

Silverlight

Silverlight4でMEFベースのアプリを作るための小さな起動用クラス

Silverlight 4でMEFベースのアプリケーションを作りたいと思ったら、以下のようなクラスを準備するとよさそうです。 using System; using System.Net; using System.Windows; using System.Windows.Controls; using System.Windows.Documents; using System.…

複数のXAPに分割されたアプリケーション

Silverlight4からお手軽に作れるようになってます。MEFの中にあるDeploymentCatalogクラスのお陰です。 例えば、SilverlightApplication5という名前でプロジェクトをつくり、MEF関連のアセンブリを2つ参照に追加します。MainPageがあるので、適当にViewMode…

画面遷移のための仕掛け

Navigation Frameworkという便利なものがあるけれど、URIで指定するしか画面の指定方法がない上に、動的に読み込まれたDLLやXAPファイルに含まれるクラスへの画面遷移がことごとく失敗してしまうために、何かしら自分で準備したほうがいいと思う。 Navigatio…

Silverlight 4のMEFのCompositionInitializerとCompositionHost

Silverlight 4のMEFは.NET Framework 4のMEFよりも、素敵な機能がいっぱいつまってます。その中の1つにデフォルトのコンテナを提供してくれるCompositionInitializerとCompositionHostというものがあります。 使い方は簡単で、SatisfyImportsメソッドの引数…

DelegateCommandっていらないかも・・・?

ViewにCommandを持つのかViewModelにCommandを持つのかの違いだけど、個人的な趣味では、ViewにCommandを持つ、この方法が気に入ってきた。今日ひらめいた。下のようなFrameworkElementを継承したICommandインターフェースを実装したクラスを定義します。 us…

Silverlight 4でドロップされたデータをサーバに保存

WCF RIA Servicesと、Silverlight 4のファイルドロップで作ってみた。 早速作ろう まずは、XAMLから。味気ないです。 MainPage.xaml

Silverlight 4でファイルのドロップ

Silverlight 3でローカルのファイルに限定的にアクセスできるようになりました。 ただし、ファイルを開くダイアログとか経由じゃないと駄目だったような気がします。Silverlight 4では、ブラウザにドロップされたファイルを開いたりすることが出来るようにな…

Twetter クライアントの作成動画

Public Timelineだけを拾ってきて、Twitterクライアントにありがちな表示をするWindows Phone 7アプリをつくってみました。 作ってる過程の動画は下にあります。途中で不可解なエラーが出て戸惑ってますが、おおむねうまく出来たと思います。

Silverlight 4のデータ検証

Silverlight 3では、プロパティのsetの部分で値の検証をして、気に入らなければ例外を投げると言うのがセオリーでした。Silverlight 4では、WPFなんかで使われているIDataErrorInfoインターフェースが追加されているので、例外を使わなくても値を保持したま…

Silverlight 4の信頼モードのブラウザ外実行のフルスクリーンモードは使えそう

Silverlight 3まで、フルスクリーンにすると使えるキーボードが制限されていたりで、動画プレイヤーとかくらいにしか使い道が思いつかなかったのですが・・・。なんと!ブラウザ外実行で、信頼モードで動いていると、キーボードがフルで効きます!! (ブラ…

Silverlight 4で右クリックメニューを出すまでの道のり

画面上に置いたRectangle上で下のようなしょぼい右クリックメニューを出すまでの道のりは、意外と長いです。 とりあえず、はっきりいえるのは、右クリックイベントが追加されたから、おまえらがんばって右クリックメニューらしいものをうまく表示してね♪って…

信頼モードのSilverlight4アプリのお試し

Out of browserで動かすときに信頼モードにすることができると聞いたので試してみました。 試した内容は、ダイアログを経由しないファイルアクセスです。 (本当はCOMオートメーション試したかったけど、Officeが家のPCに入ってないことに気づいた) 作って…

WCF RIA Servicesを使ったログイン

WCF RIA Servicesを使うとSilverlightでログインの機能を作るのが凄い楽になってます。 楽といっても、MembershipProvider, RoleProvider, ProfileProviderを使うと楽になるって感じです。Silverlight Business Applicationのプロジェクトを作成すると、ある…

VS2010RC(英語)用のSilverlight4 RCが出てます!

ここら辺が関連のものがまとまってて素敵です。 http://scorbs.com/2010/03/15/silverlight-4-rc-windows-phone-developer-tools-ctp/

Navigation Frameworkで、別アセンブリにあるページに遷移するときのURIの書き方

いつだったか、悩んでいてやり方がわからなかったけど、今日やり方見つけたのでメモです。 SilverlightClassLibrary1という名前のクラスライブラリにあるPage1.xamlへ遷移するときのURIは以下のような感じで指定するといけます。 var uri = new Uri("/Silver…

VS2010RC Silverlightのデザイナも試してみた

WPFで試したVS2010RCのデザイナですが、Silverlightでも試してみたら同じことができました。 http://d.hatena.ne.jp/okazuki/20100214/1266137754Silverlightの開発環境もここまできたか〜。 最初の段階で、これくらいほしかったなぁ。Blendの開発にリソース…

更新系の処理を作ってみよう クライアント編

前回の記事で、サーバー側の実装は終わりました。ということで、今回は、クライアント側であるSilverlightのほうを作ってみようと思います。 因みに、この例ではSilverlight ToolkitのDataFormコントロールを使っているので、流れに沿って実装してみる人は以…

更新系の処理を作ってみよう サーバー編

これまで、検索系をまったりと作りましたが、ここからは更新系の処理を.NET RIA Servicesで作ってみようと思います。 更新系の処理を出来るようにするためには、InsertXXX, UpdateXXX, DeleteXXXという名前で戻り値がvoid, 引数にエンテティを受け取るメソッ…

Silverlight3の微妙な動き(1つはバグ?)

ちょっと仕事の関係でSilverlgith3をつっついてたら、ちょっと直感的じゃないなっていう動きと、これバグ・・・?と思う動きをするのを見つけたのでメモメモ。 FrameのNavigatedイベント Silverlight3で追加されたナビゲーションフレームワークのFrameコント…

検索系の仕上げ

前記事:検索系の処理を実装してみよう前の記事で作った.NET RIA Servicesの検索系の処理ですが、よく見てみるとイマイチなところがあります。よく見てみると、日付がサーバー側とクライアント側で9時間ずれてしまっています。 ということで、ここをどうに…

検索系まとめ その2

前回:検索系まとめ前回で、サーバーサイドで検索系のメソッドをどうやって作るのかざっと見ました。 今回は、検索系のメソッドをSilverlight側でどうやって呼び出すかをまとめてみようと思います。色々なケースに対応できるようにするためか、Silverlight側…

検索系まとめ

前回:検索系の処理を実装してみよう前回、とりあえず.NET RIA Servicesを使って、検索系の処理を書いてみました。 今回は、.NET RIA Servicesの検索系の簡単なまとめをしてみたいと思います。検索系のメソッドになるためには、以下の条件を満たしている必要…

検索系の処理を実装してみよう

これまでの記事で、とりあえずHello worldは実装すること出来ました。 今回は、ちょっと踏み込んで検索系の処理をちゃんと作ってみようと思います。 プロジェクトの作成 & 下準備 CrudRIAServicesという名前でSilverlight Applicationを作成します。もちろん…

.NET RIA Servicesで自動生成されるコードを見て

.NET RIA Servicesが自動生成してくれるコードを見てると、今までめんどくさいと思ってたコードを書いてくれている印象を受けます。 例えばプロパティのコード。 サーバーサイドでは public string Text { get; set; } だけ書いているのに private string _t…

Hello worldの続き

前回:http://d.hatena.ne.jp/okazuki/20091017/1255761209前回は、簡単なHello worldを作成しました。 その際に、サーバーサイドの結果を受け取るのにコールバックを使用しました。 今回は、コールバックを使用しない方法でデータを取得してみようと思いま…

Hello world

前回:http://d.hatena.ne.jp/okazuki/20091014/1255532892.NET RIA Servicesの環境を前回整えました。 今回は、はじめてということもあるので、Hello worldからはじめてみようと思います。 プロジェクトの作成 .NET RIA ServicesをインストールするとSilver…

Silverlight3では、何処までIMEを制御できるのか?

TextBoxに対してIMEを無効・有効とかできるのか見てみました。 ヘルプとかとにらめっこした範囲では以下の情報しか見つけることは出来ませんでした。IMEを全然使えなくする。 <TextBox InputMethod.IsInputMethodEnabled="False" /> IMEを使えるようにする。(多分デフォルト値) <TextBox InputMethod.IsInputMethodEnabled="True" /> 強制的にIMEをオンにしたりする方</textbox></textbox>…

どうでもいいことに気付いた

Expression Blend3を触ってて、気付いてしまいました。 こやつステータスバーがない!?全部視覚的に表現するから、下にテキストとかで表示する情報なんて必要ないってことなのかな?という気付きでした。

ValidationSummaryコントロール その2

前回前回は、単純にValidationSummaryコントロールにValidationSummaryItemを追加しました。 今回は、もうちょっとValidationSummaryItemについて見てみようと思います。 下準備 下のような画面を作ります。

.NET RIA Servicesを使ってみた

英語版のVisual Studioでしか現時点では使えない.NET RIA Servicesを使ってみました。 Visual Studioは、日本語版と英語版が共存できるらしいという情報をもとに、ふみきってみました。まずは、Visual Web Developer 2008 Express Edition SP1をゲットします…