読者です 読者をやめる 読者になる 読者になる

がりらぼ

WindowsRuntimeの応援ブログ

【ノンデザイナー向け】ちょっと質感のあるWindowsストアアプリを作ってみよう

前回と前々回でアプリのテーマカラーの一括変更と画像のタイル表示ができるようになりました。 今回はその2つの知識を使って、デザインの知識がない人でもなんかちょっといい感じのユーザーインターフェースを作ってみましょう。 Windowsストアアプリのデフ…

フォーカスが外れても消えないFlyoutを作る

フライアウトはPageより上のレイヤに表示することができる表示非表示が簡単なコントロールでフォーカスが外れると基本的に消えるのが通常です。 実際にSettingsFlyoutもほかの場所をタップすると消えます。 それを消えないようにするためにはPopupコントロー…

ビヘイビアを自作するには

ビヘイビアを自作するにはIBehaviorインターフェースを実装し、DependencyObjectを継承する必要があります。 結構簡単にビヘイビアを作成することができました。 気を付けなければいけないのはWPF4時代の System.Windows.Interactivity.Behaviorではなく Win…

ブラシリソースはどこで変更すると変更が効くのか

たとえば <SolidColorBrush x:Key="AppThemeBrush" Color="#FFD33B8E" /> とかいうブラシリソースがあって、こいつがxamlの様々なコントロールのColorやForeground、Fillプロパティなどに割り当てられてる時。 XAMLでは上のように定義されてるけどあとからC#で変更したい!ってときは、 リソースを割り当てているコントロ</solidcolorbrush>…

添付プロパティと添付ビヘイビアを解説してみる

添付プロパティと添付ビヘイビアとはなんぞや?という疑問に、復習がてら解説していこうと思います。 添付プロパティ まず添付プロパティ 添付プロパティとはその名の通り今ある既存のコントロールに自分で新しくつくったプロパティを添付することです。 た…

XAMLでの回転式メニューについて考える

今回はちょっとむずかしい話 ドラッグして回転するようなコントロールつくれたらいいとおもいますよね(問題はどうやって回転を反映させるか。 たしかストアアプリには回転動作のイベント取得方法があったような気がするけど WPFでもできるように考えてみる。…

WebViewにstring型のHTMLを表示させる

WebViewのNavigateToStringメソッドを使いましょう。 private void Page_Loaded(object sender, RoutedEventArgs e) { this.webView.NavigateToString("<html><body><h1>アルパカ牧場</h1></body></html>"); } これでHTMLエディタもできる

Bindingする値を変換する

BindingConveterの基本的な話です。ModelとUIとのバインドにはIValueConveterというクラスを使うことでバインドする値を変換することが可能です。まずはIValueConveterを実装した変換クラスを作成 public class IntegerToStringConverter:IValueConverter { …

ドラッグ&ドロップで並び替え可能なListViewを作る

ListViewのAllowDrop、CanDragItem、CanRelorderItemの3つのプロパティをすべてtrueにすることで、イベントハンドラを書かずともドラッグ&ドロップで並び替え可能なListViewを作成することが可能です。

FlyoutとAttachedFlyoutの違いについて考える

8.1からAttachedFlyoutとかいうのが出てきました。 ちょっと気になったのでまとめます。 Flyoutについて ButtonなどのFlyoutプロパティに指定されたFlyoutは規定のClickイベントのみ反応し、Flyoutが出現します。 <Button Content="Button" HorizontalAlignment="Left" Margin="131,337,0,0" VerticalAlignment="Top" Height="132" Width="216"> <Button.Flyout> <Flyout> </flyout></button.flyout></button>

Prism for WindowsRuntimeとは何なのかまとめてみる

最近Prism for WindowsRuntimeの8.1英語verがリリースされたようです。 MSDN Blogs 最近少し熱がこもりかけているPrismforWinRTについて調べてみました。 そもそもPrismとはなんなのか patterns & practicesチームが作っているXAML系プラットフォーム向けの…

ListViewItemのスタイルを変更する

WindowsRuntimeになって変わったのかわからないですけど、 ListViewの選択項目のスタイルを変更したり、そういう時にはListViewItemのVisualStateを変更する必要があります。BlendでListViewを右クリック→追加のテンプレートの編集→ItemsContainerStyle→空の…

ProgressBarの色をC#コードから変更する

ProgressBarの色はForegraundプロパティを変更しても色が変わりません。 通常なら、Xamlのリソースを上書きするしかないです。 [xml] <SolidColorBrush x:Key="ProgressBarForegroundThemeBrush" Color="#FF4617B4" /> [/xml] こういうリソースをApp.xamlのResourceDictionaryタグの中に入れて、Colorの部分を変更すると手っ取り早いです。 </solidcolorbrush>…

GridViewの各ヘッダアイテムに個数制限を設ける

GridViewは各ヘッダにアイテムをGrid上に表示し、以前使い方を紹介しました。 しかし、GridViewは一つのヘッダのアイテムが増殖したら、見栄えが悪くなるうえに次のヘッダが見つけにくくなります。そこで、個数制限を設けましょう。 <GroupStyle.Panel> <ItemsPanelTemplate> <VariableSizedWrapGrid Orientation="Vertical" Width="800" Margin="40,0,80,0" MaximumRowsOrColumns="2"/> </ItemsPanelTemplate> </groupstyle.panel>

Styleをリソースに

プロジェクト内のコントロールには同一のスタイルを適用して デザインに一貫性を保たせたいものです。今回はStyleプロパティをリソースに加える話まずStyleをリソースとして定義(今回はWinRTのApp.xamlで定義します) <Application.Resource> <Style x:Key="MyButton" TargetType="Button"> <Setter Property="Background" Value=</style></application.resource>…

GridViewの各ヘッダアイテムに個数制限を設ける

GridViewは各ヘッダにアイテムをGrid上に表示し、以前使い方を紹介しました。しかし、GridViewは一つのヘッダのアイテムが増殖したら、見栄えが悪くなるうえに次のヘッダが見つけにくくなります。そこで、個数制限を設けましょう。 <GroupStyle.Panel> <ItemsPanelTemplate> <VariableSizedWrapGrid Orientation="Vertical" Width="800" Margin="40,0,80,0" MaximumRowsOrColumns="2"/> </ItemsPanelTemplate> </groupstyle.panel>

Styleをリソースに

プロジェクト内のコントロールには同一のスタイルを適用してデザインに一貫性を保たせたいものです。今回はStyleプロパティをリソースに加える話まずStyleをリソースとして定義(今回はWinRTのApp.xamlで定義します) <Application.Resource> <Style x:Key="MyButton" TargetType="Button"> <Setter Property="Background" Value="</style></application.resource>…