2014-01-01から1年間の記事一覧
次はコレクションに関数を生やします。 引数つけると何故か成功しなかったので引数無しで…。 using System.Web.Http; using System.Web.OData.Builder; using System.Web.OData.Extensions; // MapODataServiceRouteに必要 using WebApplication5.Controller…
次はエンテティに関数を生やします。 まずは、ODataConventionsModelBuilderに関数を指定する。 using System.Web.Http; using System.Web.OData.Builder; using System.Web.OData.Extensions; // MapODataServiceRouteに必要 using WebApplication5.Control…
Functionというのを定義してRPCみたいなこともODataでは出来ます。 まずは足し算。 ODataConventionModelBuilderのFunctionメソッドで関数の定義を作り、Returnsで戻り値を、Parameterでパラメータを指定します。 今回は足し算! using System.Web.Http; usi…
Put, Patch, Post, Deleteメソッドを作ればよしなにやってくれるみたいです。 using System.Diagnostics; using System.Linq; using System.Net; using System.Web.Http; using System.Web.OData; namespace WebApplication5.Controllers { public class Peo…
ODataいつの間にかv4になってたんですね。知らなかった。ということで、ちょっと触ってみました。 プロジェクトの作成 ASP.NETのEmptyを選んで、Web APIにチェックを入れてOKを押します。 これで必要最低限のWeb APIに特化したプロジェクトが作られます。 次…
Hubコントロールは便利なのですが、HubSectionのヘッダーに何か操作をするコントロールを置こうとすると反応してくれません。 IsHeaderInteractiveをTrueにすると反応するようになるのですが、今度はマウスオーバーとかで色がついたり>みたいなグリフがつい…
DateTimeOffset.TryParseExact(value, "yyyy-MM-ddTHH:mm:ss.fffK", null, DateTimeStyles.None, out 出力先); Kっていう書式初めて使った。
WPFには、見た目とデータを分離して管理するための強力なデータバインディングの機能があります。WPFのデータバインディングは、依存関係プロパティとプロパティの間の同期をとる機能にないります。 単純なBinding データバインディングは、ソースに設定され…
Prismの全機能を使おうと思ったらModule使ったりとか結構だるいです。でも「Regionで画面区切って画面遷移できる機能とかは使いたい。」と思いました。 思考錯誤して出来たのでメモっておきます。 NuGetからのインストール Prism.UnityExtensionsをNuGetから…
UserControlで、独自コントロールを作る方法を紹介しましたが、UserControlではできないことがあります。ControlTemplateへ対応です。ControlTemplateへ対応した完全なWPFの独自コントロールを作るには、これから紹介するカスタムコントロールを作成する必要…
コントロールの作成 WPFでは、コントロールの見た目を少し変えたいといった要求は、StyleやDataTemplate、ControlTemplateを使って簡単に実現できます。そのため、Windows Formのころに行っていた、見た目を変えるためのカスタムコントロールの作成は、ほと…
WPFのコントロールは、見た目を完全にカスタマイズする方法が提供されています。コントロールは、TemplateというプロパティにControlTemplateを設定することで、見た目を100%カスタマイズすることが出来るようになっています。 (adsbygoogle = window.adsbyg…
コードレシピにさくっと。 Prism.Mvvm + ReactiveProperty サンプル in C# for Visual Studio 2013
ここでは、リソースについて説明します。WPFのコントロールには、ResourceDictionary型のResourcesというプロパティが定義されています。ResourceDictionaryクラスの中には、画像・文字列・オブジェクトなど様々なものを名前をつけて保持することが出来ます…
こねたです。 こんなのを用意しておくと捗ります。 using Microsoft.Practices.Prism.Interactivity.InteractionRequest; using System; using System.Reactive.Disposables; using System.Reactive.Linq; namespace WpfApplication7 { public static class …
ReactiveProperty - MVVM Extensions for Rx - Download: ReactiveProperty v1.0 What's new Reactive Extensionsのバージョンを最新にあげました。 なぜv0.4からv1に上げてみたか お仕事で使ってくれてる人がいて、その人から聞いてたら結構ヘビーに使って…
WPFでBindingを強制的に評価したいときってありますよね?(ない?) そんなときはコントロールからBindingExpressionを取得してUpdateTargetメソッド(VMからV側の更新)やUpdateSourceメソッド(VからVMへの更新)を使います。 例えばTextBlock型のtextBlo…
Styleについては、「WPF4.5入門 その21 「WPFのコンセプトと重要な機能つまみ食い」 - かずきのBlog@hatena」で簡単に紹介したとおり、コントロールに設定するプロパティの値のセットを集めるためのものです。共通の設定を行うコントロールが多数ある場合は…
キーフレームアニメーション これまで説明した型名Animationで指定するアニメーションの他に、WPFでは、キーフレームアニメーションと呼ばれるアニメーションを定義するための型があります。<型名>AnimationUsingKeyFrameという名前で定義されています。サポ…
こんなつぶやきを見たので。 一方のReactiveProperty<string>が変化するとThrottleで何秒か捨ててからもう一方のRP<string>に整形しつつ反映する、ってやつで、捨てる間隔もRP<int>が変化するたびに反映させたい感じの2014-08-28 14:41:09 via ぷちぺぷちど 書いてみたけど、こん</int></string></string>…
WPFは、アニメーションを組み込みでサポートしています。WPFのアニメーションは、指定した依存関係プロパティを指定した時間内で、指定した変化量で、指定した範囲の値を変化させ続ける仕組みになります。単純なWPFのアニメーションの定義例を以下に示します…
タブを作るだけなのにめんどくさくない!? すごく参考になったサイト。 Fragmentによるタブのレイアウト | Fragmentによるタブ作成|サイト構築日記 タブでコンテンツ(Fragment) を切り替える | Fragmentによるタブ作成|サイト構築日記
WPFの重要なコントロールの1つにContentControlクラスがあります。このクラスは、Contentプロパティに設定された単一の要素を表示するという機能を提供するコントロールです。「WPFのコンセプト」でも紹介しましたが、このコントロールが、要素を表示する際…
WPFは、イベントも独自の機構を構築しています。WPFのイベントシステムの特徴を説明する前に、なぜその仕組みが必要になるかというシンプルな例を示したいと思います。以下のようにButtonの中にButtonがあるシンプルなケースでのイベントについて考えてみま…
さて、かなり前に書いた記事があります。 PropertyChangedイベントの処理方法 - かずきのBlog@hatena こいつの欠点は購読したあと解除方法がないことですね。辛い。 今ならどうする? ということで今ならReactive Extensionsという素敵なものがあります。例…
添付プロパティは、別のDependencyObjectを継承したクラスに対して、任意のプロパティを設定することが出来る機能です。例えば、GridクラスのRow添付プロパティやColumn添付プロパティがあります。これは、Grid内の別コントロールに対して、何行目、何列目に…
依存関係プロパティのメタデータは、PropertyMetadataクラスの他に、PropertyMetadataクラスを継承したUIPropertyMetadataクラスや、FrameworkPropertyMetadataクラスがあります。UIPropertyMetadataクラスは、WPFのアニメーションを無効化にする機能を提供…
これまで見てきた依存関係プロパティは全て読み書きできるものでしたが、読み取り専用の依存関係プロパティも定義できます。読み取り専用の依存関係プロパティは、DependencyPropertyKeyというクラスを使用します。 読み取り専用の依存関係プロパティの例を…
DispatcherObjectの1段下に継承階層をおりると、DependencyObjectというクラスになります。DependencyObjectは、WPFで使われた独自のプロパティシステムを実装しています。この独自のプロパティシステムのことを、依存関係プロパティと添付プロパティといい…
コントロールの使い方ばかりを書くのも飽きてきたので趣向を変えていきます。 DispatcherObject WPFでは、他のUIフレームワークと同様にUIを操作するには専用のスレッドから操作をする必要があります。WPFでは、この操作を簡単にするためにDispatcherという…