xaml内で改行を入力するには?「
」を辞書登録がおススメ

C#

こんにちは、働くC#プログラマーのさんさめです。

ちょっと長めのツールチップを書きたいとき、
改行を入れて見やすくすると思います。

改行込みToolTipの例

ただ、xamlで改行を入力しようとする時、
毎回一瞬「どうやるんだっけ?」ってなるんですよね。

つい手癖で「\n」とか打ちたくなりますが、
残念ながら効きません(笑)

本記事ではxamlで改行を入力するときの手順と、
おススメの方法を紹介します。

スポンサーリンク

改行を入力するには「
」と打てばよい

結論から言うと、xaml内で改行を入れたくなったら




と入力すればOKです
(まぁ、タイトルで言ってるんですが)

いわゆるエスケープ文字というやつですね。
xamlの仕様というよりxmlの仕様です。

xamlで改行を入力するサンプルコード

せっかくなのでサンプルコードも。
以下は冒頭の例に使ったxamlです。

<Window x:Class="WpfApp1.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="450" Width="800">
    <StackPanel>
        <Button Content="pdfエクスポート"
                Click="Button_Click"
                ToolTip="現在の編集内容をpdfとして保存します&#xa;画像として保存したい場合は下のボタンを押してください"/>
        <Button Content="jpgで保存"
                Click="Button_Click_1">
            <!-- ↓のように書いた場合は効きません -->
            <Button.ToolTip>
                現在の編集内容をjpgで保存します。&#xa;
                pdfとして保存したい場合は「pdfエクスポート」ボタンを押してください
            </Button.ToolTip>
        </Button>
    </StackPanel>
</Window>

ToolTipプロパティのなかで「&#xa;」を使っています。

ただし、xaml上で見やすくしたいからと言って、
次のようにタグ内文字列として書いてしまうと効きません。

<Button.ToolTip>
    現在の編集内容をjpgで保存します。&#xa;
    pdfとして保存したい場合は「pdfエクスポート」ボタンを押してください
</Button.ToolTip>

横長にはなってしまうのですが、
次のように入力するようにしましょう。

<Button ToolTip="現在の編集内容をpdfとして保存します&#xa;画像として保存したい場合は下のボタンを押してください"/>

「&#xa;」は「かいぎょう」で辞書登録しておくと便利

とはいっても、
実際使いたいときにはまぁまぁの確率で忘れてます
人間ってそういうものです。

なので、「&#xa;」を辞書登録しておくことをお勧めします。

IMEで辞書登録するには、「単語の登録」を行えばOKです。

以下の感じで入力して「登録」ですぐ使えます。

よみをどうするかは個人の好みによると思いますが、
「かいぎょう」にしておくと、
入力方法を忘れてしまっていても
「xaml 改行」みたいなワードで
検索しようとした段階で勝手に変換されるのでおススメです(笑)

さんさめ
さんさめ

「あっ、それそれ」ってなります
自分でやっといて何を…

まとめ

まとめです。

  • xaml上だけで改行を入力したい場合は「&#xa;」
  • タグ要素内の文字列では効かないので注意
  • 「かいぎょう」で辞書登録しておくとはかどります

最後までお読みいただきありがとうございました。

コメント

タイトルとURLをコピーしました