2012年11月29日
WPFサンプル:FlowDocumentReader
FlowDocumentReaderは、FlowDocumentReaderとFlowDocumentScrollViewerの機能を併せ持った
ようなコントロールです。
ページモード、スクロールモード、2ページモードの3種類の表示モードを切り替える
ことができます。



ページモード、スクロールモード、2ページモードの3種類の表示モードを切り替える
ことができます。



2012年11月27日
WPFサンプル:FlowDocumentPageViewer
FlowDocumentPageViewerのサンプルです。
前回示したFlowDocumentScrollViewerは、スクロール モードしながらコンテンツを閲覧できましたが、
このFlowDocumentPageViewerコントロールは、ページ単位でコンテンツを閲覧することが
できます。



前回示したFlowDocumentScrollViewerは、スクロール モードしながらコンテンツを閲覧できましたが、
このFlowDocumentPageViewerコントロールは、ページ単位でコンテンツを閲覧することが
できます。



2012年11月22日
WPFサンプル:FlowDocumentScrollViewer
FlowDocumentScrollViewerは、スクロール モードでフロー コンテンツを表示するためのコントロールです。


以下に示すようにほんのわずかなコードで、上記のようなViewerが出来てしまいます。


以下に示すようにほんのわずかなコードで、上記のようなViewerが出来てしまいます。
2012年11月21日
Webパフォーマンステストで「リモート名を解決できませんでした」のエラーの対処
Visual Studio の Web パフォーマンス テストレコーダーで記録したテストを実行すると、
”要求に失敗しました: リモート名を解決できませんでした。”
とエラーになってしまう。
ファイアウォールの外にある Web サイトをテストしている場合、
Web テスト の [プロパティ] ウィンドウで [プロキシ] プロパティを選択し、
プロキシ名を入力する必要があるんですね。
なお、「default」と入力すれば、Internet Explorer のプロキシ設定を利用するようになります。
”要求に失敗しました: リモート名を解決できませんでした。”
とエラーになってしまう。
ファイアウォールの外にある Web サイトをテストしている場合、
Web テスト の [プロパティ] ウィンドウで [プロキシ] プロパティを選択し、
プロキシ名を入力する必要があるんですね。
なお、「default」と入力すれば、Internet Explorer のプロキシ設定を利用するようになります。
2012年11月20日
WPFサンプル:DocumentViewer
DocumentViewerを使うと、XpsDocument を表示するビューワを簡単に作成できます。


以下に、XAMLとコードを示しますが、たったこれだけの記述で、上記プログラムが、実現ができます。


以下に、XAMLとコードを示しますが、たったこれだけの記述で、上記プログラムが、実現ができます。
2012年11月18日
WPFサンプル:ProgressBar (Taskクラス使用によるバックグラウンド処理)
BackgroundWorkerを使ったProgressBarのサンプルを約半月前に載せましたが、
今度は、.NET Framework4から提供されている Taskクラスを使ったサンプルコードです。


サンプルプログラムなので、2種類のProgressBarを配置しています。
Task.Factory.StartNewメソドでバックグラウンドで処理を走らせ、ContinueWithメソッドで
終了した時と、キャンセルされた時の処理を記述しています。
なお、処理をキャンセルするには、CancellationTokenSourceクラスを利用する必要があります。
ProgressBarの表示を更新するために、バックグラウンドで動作している MyActionメソッドでも
Taskクラスを利用しています。Taskクラスの使い方を示すために、あえて、先ほどとは別の書き方
にしています。
アプリケーションのUIスレッドでTaskを動作させるために、TaskScheduler.FromCurrentSynchronizationContext()で
取得した値を、Task.Startメソッドに渡しています。
今度は、.NET Framework4から提供されている Taskクラスを使ったサンプルコードです。


サンプルプログラムなので、2種類のProgressBarを配置しています。
Task.Factory.StartNewメソドでバックグラウンドで処理を走らせ、ContinueWithメソッドで
終了した時と、キャンセルされた時の処理を記述しています。
なお、処理をキャンセルするには、CancellationTokenSourceクラスを利用する必要があります。
ProgressBarの表示を更新するために、バックグラウンドで動作している MyActionメソッドでも
Taskクラスを利用しています。Taskクラスの使い方を示すために、あえて、先ほどとは別の書き方
にしています。
アプリケーションのUIスレッドでTaskを動作させるために、TaskScheduler.FromCurrentSynchronizationContext()で
取得した値を、Task.Startメソッドに渡しています。
2012年11月14日
WPFサンプル:ShowメソッドとShowDaialogメソッド
ShowメソッドとShowDialogメソッドのサンプルです。
スクリーンショットではその違いが分かりませんが、この2つのメソッドは、
いわゆるモードレスとモーダルの違いがあります。
なお、メインウィンドウを閉じようとした時には、Closingイベントハンドラで、
ダイアログを表示し、終了有無を確認するようにしてみました。
このハンドラの中で、引数 System.ComponentModel.CancelEventArgs e の、
Cancelプロパティをtrueにすることで、ウィンドウを閉じることをキャンセル
することができます。




まずは、MainWindowのXAMLとC#のコードです。
次にShowメソッドで表示されるSubWindowのXAMLとC#のコードです。
最後はShowDialogメソッドで表示されるDialogWindowのXAMLとC#のコードです。
スクリーンショットではその違いが分かりませんが、この2つのメソッドは、
いわゆるモードレスとモーダルの違いがあります。
なお、メインウィンドウを閉じようとした時には、Closingイベントハンドラで、
ダイアログを表示し、終了有無を確認するようにしてみました。
このハンドラの中で、引数 System.ComponentModel.CancelEventArgs e の、
Cancelプロパティをtrueにすることで、ウィンドウを閉じることをキャンセル
することができます。




まずは、MainWindowのXAMLとC#のコードです。
次にShowメソッドで表示されるSubWindowのXAMLとC#のコードです。
最後はShowDialogメソッドで表示されるDialogWindowのXAMLとC#のコードです。
2012年11月12日
WPFサンプル:Ellipse と Rectangle
Ellipse (楕円)とRectangle(長方形)のサンプルです。
Opacityプロパティで、不透明度を指定しています。
0.0(完全に透明)〜 1.0(完全に不透明)の値を設定します。


このサンプルでは、右上の水色の楕円をクリックすると、Rectangleが動的に
生成されるようになっています。
他のコントロールについても動的に生成する場合は、 ここに示したコードが基本となります。
Opacityプロパティで、不透明度を指定しています。
0.0(完全に透明)〜 1.0(完全に不透明)の値を設定します。


このサンプルでは、右上の水色の楕円をクリックすると、Rectangleが動的に
生成されるようになっています。
他のコントロールについても動的に生成する場合は、 ここに示したコードが基本となります。