Как я могу заставить текст прокрутки WPF TextBox в положение каретки?

Стандартный элемент управления WPF TextBox не прокручивает переполненный текст в позицию курсора при вводе текста в элемент управления. Можно ли создать такое поведение в отдельном элементе управления WPF TextBox? Если да - как? Примером такого поведения является стандартное действие типа ввода HTML = текст в большинстве (если не во всех?) Браузерах.


person user19264    schedule 16.12.2009    source источник


Ответы (1)


TextBox будет иметь такое же поведение, если ему не разрешено растягиваться бесконечно.

<StackPanel>
    <StackPanel Orientation="Horizontal"
                Margin="5">
        <TextBlock Text="No Horizontal Scrolling:" />
        <TextBox HorizontalAlignment="Stretch"
                 MinWidth="100" />
    </StackPanel>
    <StackPanel Orientation="Horizontal"
                Margin="5">
        <TextBlock Text="Horizontal Scrolling:" />
        <TextBox Width="100" />
    </StackPanel>
    <StackPanel Orientation="Horizontal"
                Margin="5">
        <TextBlock Text="Horizontal Scrolling:" />
        <TextBox HorizontalAlignment="Stretch"
                 MinWidth="50"
                 MaxWidth="100" />
    </StackPanel>
    <DockPanel Margin="5">
        <TextBlock DockPanel.Dock="Left"
                   Text="Horizontal Scrolling:" />
        <TextBox />
    </DockPanel>
</StackPanel>
person rmoore    schedule 16.12.2009