TextBoxのPlaceholderTextにCharacterSpacingを適用する方法はありますか?UWP - PlaceholderTextにCharacterSpacingを適用する方法
TextBoxテンプレートを編集しようとしましたが、ContentPresenterがPlaceholderTextを表示していて、CharacterSpacingを使用しようとしましたが動作しませんでした。また、FontStretchを試してみましたが、結果はありません。
TextBoxのPlaceholderTextにCharacterSpacingを適用する方法はありますか?UWP - PlaceholderTextにCharacterSpacingを適用する方法
TextBoxテンプレートを編集しようとしましたが、ContentPresenterがPlaceholderTextを表示していて、CharacterSpacingを使用しようとしましたが動作しませんでした。また、FontStretchを試してみましたが、結果はありません。
私はテキストボックステンプレートを編集しようとしましたが、私はのContentPresenterがPlaceholderTextを示している気づいた、私はそれにCharacterSpacingを使用しようとしましたが、それは
PlaceholderText
をするときのためにContentControlの内側に提示されて動作しませんでしたdefault styleを使用してください。 PlaseholderText
は、content
プロパティの値です。 content
プロパティのタイプはobject
です。一方、CharaterSpacing
プロパティはstringの属性です。だから、これが理由だと思われるので、CharaterSpacing
は影響を受けません。 のプロパティはTextBox
,AutoSuggestBox
、TextBlock
のようなプロパティはText
プロパティのタイプがstring
なのでCharaterSpacing
プロパティに影響を与えることができます。 PlaceholderText
をCharacterSpacing応募方法
あなたがここに
PlaceholderText
にCharaterSpacing
を適用したい場合は、PlaceholderText
に影響を及ぼさない新しいスタイルであることをPlaceholderTextContentPresenter
ため代わりにContentControl
のTextBox
コントロールを使用することができます特徴。しかし、以前と同じように見えるようにするためには、いくつかの変更を加える必要があります。<TextBox x:Name="PlaceholderTextContentPresenter" Grid.Row="1" Grid.ColumnSpan="2" Margin="{TemplateBinding BorderThickness}" Padding="{TemplateBinding Padding}" Foreground="Gray" CharacterSpacing="1000" IsHitTestVisible="False" BorderThickness="0" Text="{TemplateBinding PlaceholderText}" />
そして結果:
を次のように新しいTextBox
スタイル用のコードを更新