C#

Silverlight 2 Beta 2で追加されたVisualStateManager

Silverlight 2のBeta 2がリリースされて、色々と新しい機能が追加された。その中で一番おもしろそうなのがこれ「Visual State Manager」という仕組み。簡単に言えば、コードを書かなくてもUIコンポーネントの状態(イベント)に合わせて、UIの表示を変えられ…

Unity Application Block 1.1 Released

Enterprise Library 4.0がリリースされて、これに搭載されているDIコンテナのObjectBuilderが「Unity Application Block」と名前を改められてリリースされた。 Unity Application Block 1.1 - May 2008 | Microsoft Docs Enterprise Library自体は(いろんな…

スケジュール管理とタスク管理をからめる

なにかしらのシステムを開発する時、要件定義を行ってから機能を洗い出し、それぞれの機能をタスクに分割し予想工数を割り当て見積もりを行う。その総工数から判断してスケジュールを組み立てていくわけだけど、例えば総工数が200時間だとしてそれを単純に8…

マウスホイールに対応する

Silverlight 2 Beta 1ではマウスホイールに対応するイベントが用意されていない。これがないとホイールスクロールで画像を拡大・縮小とかができないので、操作性が悪くなってしまう。といっても方法が無いわけでもなくて、JavaScriptを使えば簡単にできる。…

PowerShellスクリプトの有効活用

PowerShellでWebサイトにアクセスして情報を取ってきて、その情報をオブジェクト(PSObject)として出力するようなスクリプトを作った。このスクリプトはあくまでもテスト用に作っただけで、Webサイトへのアクセス方法と情報の取得方法がわかって完全に動作…

Silverlightの流儀 その2

今回はユーザコントロールを作るときの流儀について。といっても、WinFormのカスタムコントロールなんかとそんなに違いはなくて「依存プロパティ」の使い方だけに注意しておけばいい。「依存プロパティ」の話の前にカスタムコントロールの基本的な作り方につ…

Silverlightの流儀 その1

この前のわんくま勉強会のWPF*1関連のセッションで学んだ事をメモっていく。 Silverlightにおける型変換(データと表示の分離) SilverlightというかXAMLをいじっていて困ったことは、TextBlockとかTextBoxなんかのコントロールに値をバインドする時に例えば…

Silverlightで作るつぶやきアプリ

まぁ、TwitterのパクリなんですけどねwTwitterのようなブラウザを使ってメッセージのやり取りが出来るIMを会社のイントラ内の閉じた世界でやりたかったのでサクッと作った。名前は「Swit」、Twitterクライアントの「Twit」をもじった。Swit - デモ実装して…

Silverlightでユーザがアップロードしたファイルをダウンロードする

なんのこっちゃと思われそうなタイトルだけど、どういうことかというと、以下のようなテキストボックスと「Open」「Save」ボタンがある簡易的なテキストエディタアプリ(Silverlight製)があるとする。このアプリは「Open」ボタンをクリックすると、 お馴染…

Silverlightで自身のURLを取得するには?

その手があったかー!! How does my Silverlight app finds it’s web services? « IgorShare Thoughts and Ideas Uri docUri = HtmlPage.Document.DocumentUri; Uri svcUri = new Uri(docUri, "ServiceAdress.svc"); どういうことかというと Silverlightク…

Silverlight 2でTodoアプリを作ってみる ラスト

長らくほったらかしにしていたので完結させる。といっても前回からの続きではなく一から完全に作り直した。基本的な流れは同じなのであえて解説はしない。完成形は以下のデモサイトを参照されたし。 やることリスト for Silverlight実装している機能は、 Tod…

SilverlightにHttpWebRequestがある件

「System.Net」アセンブリに「HttpWebRequest」クラスがある・・・orzアセンブリ分かれてやんの。しかも同期呼び出しをサポートしている・・・ゴクリしていなかった・・・orz。オブジェクトブラウザで見ると「GetResponse」メソッドがあるのに、Intellisenceに…

Silverlightで作るお絵描きアプリ その1

Silverlightを使って今度はお絵描きアプリを作った。お絵描き for Silverlight動作環境 IE6以上、Firefox2(確認したのだけ) Silverlight 2 Beta 1 できることは、 ペンで線を描く 消しゴムで線を消す ペンの太さ(2〜10)、色を変更できる 描いた絵をネッ…

Silverlightで作る付箋紙アプリ ラスト

長々と続いたけどこれでラスト。付箋紙の編集機能を実装する。まずは付箋紙の情報を変更するためのサーバーサイドの処理。 付箋紙の情報を変更するためのURLは「~/Item/Set.aspx」にする。付箋紙のidは必須!!では、ItemControllerクラスにSetというメソッ…

Silverlightで作る付箋紙アプリ その4

今回は付箋紙の追加、編集、削除のサーバーサイドの処理を実装していく。 付箋紙を追加する 付箋紙を追加するためのURLは「~/Item/New.aspx」にする。付箋紙を追加するためのパラメータは左端の位置(left)と上端の位置(top)だけ。これをクエリパラメータ…

Silverlightで作る付箋紙アプリ その3

今回はサーバーサイドの処理を実装していく。まず、付箋紙が保持する情報を決める。 付箋紙Id(システムのための識別子) コメント 左端、上端の座標 横幅、縦高さ 付箋紙の色 この情報をサーバー側でXMLとして保持する。XMLのフォーマットは以下のようにし…

Silverlightで作る付箋紙アプリ その2

まずは付箋紙をぺたぺた貼るためのコンテナになるメイン画面を作る。この役割は「Page.xaml」に任せるので、「Page.xaml」を以下のように変更する。 Page.xaml <UserControl x:Class="Fusen.Page" xmlns="http://schemas.microsoft.com/client/2007" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"> <Canvas x:Name="LayoutRoot" Background="White"> </Canvas> </UserControl>…

Silverlightで作る付箋紙アプリ 番外

レンタルサーバーを借りたので、この連載で最終的にできあがる付箋紙アプリのデモを公開した。付箋紙アプリ for Silverlight動作環境はIE6以上IE7限定でSilverlight2 Beta1が必要、Firefoxでは何故か動かなかった(この前まで気持ちよく動いていたのに、今は…

Silverlightで作る付箋紙アプリ その1

最近Web上で共有するような付箋紙アプリをちらほら見かけるようになった。大抵の場合Ajaxで実装されていて、非常によくできているので感心してしまう。こういうおもしろいアプリを触っていると自分でも作ってみたくなるのがプログラマの性ということで、最近…

Silverlight Beta 2では非同期呼び出しができない 続き

と思ったら、Threadクラスを使えばできた。 var thread = new Thread(() => { HtmlPage.Window.Alert("Async call"); }); thread.Start(); 実行はできたけど、メッセージが表示されない。デバッグしてみたら、SilverlightでもWinFormアプリケーションと同じ…

Silverlight Beta 2では非同期呼び出しができない

Silverlight Beta 2でこういう処理書いたら、NotSupportedExceptionが飛んできたんだけど、 Action act = () => { HtmlPage.Window.Alert("Async call"); }; act.BeginInvoke(null, null); NotImplementedExceptionじゃないところを見るとSilverlightでは非…

色選択リストを作る

Silverlightで色を選択するためのリストが欲しかったので作ってみた。普通ならComboBoxを使って、テンプレートを変更すればいいんだろうけど、現状のBeta2ではまだ用意されていない(というか正式版では用意されるんだよね?)ので、色々ごちゃごちゃ組み合…

Calendarの日付表示をカスタマイズするには?

Silverlightにはカレンダーを表示するためのCalendarコントロールというのがあって、さくっとカレンダーの一覧を出したい時に非常に役に立つ。これの日付部分はボタンになっていて、日付だけが表示されているんだけど、例えばこの部分にテキストボックスとか…

C#の匿名メソッドをJavaScriptにコールバックさせる

前回のネタ↓になんの反応も無かったので、だぶん誰も興味がないんだろうけど・・・orz、まだ続ける。 SilverlightにjQueryのパワーを - Architect Life SilverlightからJavaScriptの関数が呼び出せる事は前回まででご承知の通り。例えば以下のようなJavaScri…

SilverlightにjQueryのパワーを

ところでこのコードを見てくれ・・・こいつをどう思う? Page.xaml.cs private void LayoutRoot_Loaded(object sender, RoutedEventArgs eventArgs) { var data = new[] { new { Name="A", Member=new[] { "Bob", "John" } }, new { Name="B", Member=new[] …

SilverlightでjQuery

さっきのやつでサーバーサイドからクライアントサイドのJavaScriptを呼び出せる事がわかったので、さっそくjQueryのラッパークラスを作ってみた。 jQuery.cs class jQuery { private static readonly HtmlWindow window = HtmlPage.Window; private ScriptOb…

Silverlight 2でTodoアプリを作ってみる その3

前回でTodoアイテムの追加画面を表示するところまでを作ったので、今回は追加画面の実際の処理を作る。まずサーバーサイドの処理から実装する。「AddItem.aspx」というASP.NETページを新規作成して、コードビハインドファイルに以下の処理を追加する。 AddIt…

Silverlight 2でTodoアプリを作ってみる その2

前回でTodoアイテムの一覧をListBoxに表示した。 といってもタイトルが表示されているだけなので今回はまず、完了したかどうかを示すチェックボックスを表示してみる。 チェックボックスを表示するためにはListBoxに表示するアイテムの表示方法を変える必要…

Silverlight 2でTodoアプリを作ってみる その1

VS2008もAmazonから届いて、やっとこさSilverlight 2の開発環境が整ったのでなんか作ってみることにした。「Silverlight Application」プロジェクトでプロジェクトを新規作成する。名前は「SLTodo」にする。 作成した直後のプロジェクト構成 画面的には、Tod…

PowerShellにWebDAVをマウントする

最近PowerShellばっかりやっている気がするけど、今回はPowerShellにWebDAVサポートを追加した。これを使うとWebDAVサーバー上のリソースをローカルのリソースのように扱える。ソースは以下から OneDrive マウントの仕方 PS > New-PSDrive Hoge Web http://l…