より良いエンジニアを目指して

1日1つ。良くなる!上手くなる!

WPFでInkCanvasを使ってみる。InkCanvasの背景を透明にする。

docs.microsoft.com

WPFのInkCanvasを試してました。

<Window x:Class="TryInkCanvas.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:TryInkCanvas"
        mc:Ignorable="d"
        Title="MainWindow" Height="450" Width="800">
    <Grid Background="Yellow">
        <InkCanvas Margin="40"/>
    </Grid>
</Window>

f:id:rimever:20190912224749p:plain

課題はInkCanvas部分のみが白くなってしまいます。

以下のようにBackgroundを指定します。

<Window x:Class="TryInkCanvas.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:TryInkCanvas"
        mc:Ignorable="d"
        Title="MainWindow" Height="450" Width="800">
    <Grid Background="Yellow">
        <InkCanvas Margin="40" Background="Transparent"/>
    </Grid>
</Window>

f:id:rimever:20190912225052p:plain

おまけ

Xaml IslandのInkCanvasでは、まだInkCanvasの背景色指定は出来なさそうです。

github.com

ずっとハマってました。

Preview段階だし、まだこれから。

書きやすさはXaml Islandの方が良さそうなので期待。