私のコントロールのサイズがTextBoxを変更したり、フォントが正しく表示されるようにTextBoxをスタイルします。コントロールがサイズ変更されたときにフォントが正しく表示されるようにTextBoxのサイズを変更します。
私はほとんど働いています。
私のスタイル:
<UserControl.Resources>
<Style x:Key="ViewBoxTextBox" TargetType="TextBox">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="TextBox">
<Viewbox HorizontalAlignment="Left">
<TextBox Text="{TemplateBinding Text}" Width="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=ActualWidth}"/>
</Viewbox>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</UserControl.Resources>
コード例:以下は
<TextBox Style="{StaticResource ViewBoxTextBox}" Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="2" Margin="2" Text="{Binding MyText}"/>
は、3つの条件のスクリーンショットです。第三のスクリーンショットで
私は私のコントロールの高さを低くするときのTextBoxフォントが正しく大きさで減少しているが、テキストボックスの幅が減少し、全体の利用可能幅を占有されていません。
アイデア?
ViewBoxのStretchプロパティをFillに設定してください。 – mm8
@ mm8幅を最大に固定することはできますが、フォントサイズがテキストボックス内で減少するのを防ぎました。 – CathalMF
最も簡単なルートは、 'ViewBox'でそれを叩く –