プログラムの事とか

お約束ですが「掲載内容は私個人の見解です」

WPF

Microsoft.Maps.MapControl.WPF の残念なうごき

WPF

Microsoft.Maps.MapControl.WPFはNuGetで入れることができるWPF用の地図コントロールです Bing Maps WPF Control ベースとなる地図がBing MapsになっているだけのよくあるTMS(?)のコントロールで最新版は1.0.0.3(2015/02/19)となっています このコントロール…

.Net Framework 4.7 のWPF Touch/Stylus support をあまり考えずに有効にしたらはまったこと

WPF

早いもので半年以上前にリリースされた.Net 4.7です リリースノートはこちら blogs.msdn.microsoft.com この記事に WPF Touch/Stylus support for Windows 10 ってのがありまして、More reliableとかMore capableとかよさげなことが書いてあるんですね とい…

WPFのItemsControlで仮想化が効かない時に確認すること

WPF

なんで仮想化しないんだろー、と悩んでいたら当たり前だったこと 準備 <DataTemplate> <TextBlock Text="{Binding Converter={StaticResource TextConverter}}"/> </DataTemplate> DataTemplateをこんな感じで書いて public class TextConverter : IValueConverter { private int _counter; public object Convert(object value, Type targetType, object paramete…

.Net Framework 4.7で動きが変わったところ(WPF)

WPF

たまたま見つけたの一つだけです <Grid> <Grid.RowDefinitions> <RowDefinition MaxHeight="0" /> <RowDefinition Height="*" /> <RowDefinition MaxHeight="4" /> </Grid.RowDefinitions> <Rectangle Fill="Green"/> <Rectangle Grid.Row="1" Fill="Blue"/> <Rectangle Grid.Row="2" Fill="Orange"/> </Grid> こういうXAMLを用意します RowDefinitio…

WPFで雑にウォーターマーク付きのテキストボックスを作る

WPF

ウォーターマークのあるテキストボックス(未入力だと透かしがでるやつ)がたまにほしくなりますよね ガッツリ作る必要もない時はテンプレートで適当に作ってしまえばいいんじゃない? <Window.Resources> <Style x:Key="WatermarkTextbox" TargetType="{x:Type TextBox}"> <Setter Property="Template"> <Setter.Value> <ControlTemplate TargetType="{x:Type TextBox}"> <Grid Background="White"> </grid></controltemplate></setter.value></setter></window.resources>

WPFのInkCanvasで塗りつぶす

WPF

InkCanvasは線を描くものっぽくて閉じた領域の塗りつぶし、みたいなことは標準ではできなさそうでした ということでとりあえず適当に塗りつぶすようにしていみます 塗りつぶす人 System.Windows.Ink.Strokeを継承してDrawCoreで塗りつぶすようにします ソー…

WPFのItemsControl.ItemTemplateでリストの一つ前を参照する

WPF

WPFのItemsControlはすごく強力だとおもいますよね ItemsControl.ItemsSourceにリストをバインドして、ItemTemplateで中身を定義すると自由なリストが簡単に作れるので一度使うと癖になります 簡単な例だとこんな感じ <ItemsControl ItemsSource="{Binding Numbers}"> <ItemsControl.ItemTemplate> <DataTemplate> <StackPanel Orientation="Horizontal" Margin="5"> <TextBlock Text="{Binding}"/> </textblock></stackpanel></datatemplate></itemscontrol.itemtemplate></itemscontrol>

WPFでShapeをResourceにして使いまわす

WPF

WPFに限らず今時のアプリではアプリ内で使うアイコン等をベクトルデータで持っていることが多いと思います Illustrator → SVG → XAML って感じでアイコンデータがやってきたりすると思いますが、これをそのままContentに張り付けるのは悪手ですよね(面倒な…

WPFのCanvas上で動くShapeを線でつなぐ

とりあえずこんな感じの奴を用意します <Canvas> <Rectangle x:Name="Rect1" Width="50" Height="50" Fill="Cyan" Canvas.Left="0" Canvas.Top="0"/> <Ellipse x:Name="Ellipse1" Width="50" Height="50" Fill="Magenta" Canvas.Left="200" Canvas.Top="200"/> </ellipse></rectangle></canvas>

WPFで地図にTileを追加したりしてみる

puni-o.hatenablog.com puni-o.hatenablog.com puni-o.hatenablog.com のWPF版です。(今度こそXamarin.Androidだと思った?ねぇ思った?) サクッとやりますよ。 使うのはMicrosoft.Maps.MapControl.WPFです。Nugetでゲットできます。 こんな感じ。みんな地…