Выравнивание текста по левому краю в поле автозаполнения

Я ищу, как выровнять левый текст в AutoCompleteBox

Итак, я детали,

результат слишком длинный для текстового поля, связанного с полем автозаполнения, поэтому отсутствует часть.

если результат: "результат моего окна автозаполнения", когда я нажимаю и выбираю его, он отображается в текстовом поле.

Но на экране отображается часть: "f my autocomplete box", и я хочу "результат моего автозаполнения".

Вот мой xaml:

<myControl:AutoCompleteBox x:Name="acp" Grid.Row="0" Grid.Column="1" 
           HorizontalAlignment="Left" VerticalAlignment="Top"  
           IsTabStop="False" 
           MinimumPrefixLength="3" 
           ItemTemplate="{StaticResource ItemTemplate}" 
           ValueMemberBinding="{Binding FullName}"
           ItemsSource="{Binding Data, ElementName=MySource}" 
           Text="{Binding FullName, Mode=TwoWay, NotifyOnValidationError=True, ValidatesOnExceptions=True}" 
           Width="150" 
           IsTextCompletionEnabled="False" 
           FilterMode="None" IsDropDownOpen="True"/>

Надеюсь, мне ясно. Спасибо.

3 ответа

Решение

Вы должны попробовать это

<my:AutoCompleteBox Name="acbNames" ValueMemberBinding="{Binding FullName}">
    <my:AutoCompleteBox.ItemTemplate>
        <DataTemplate>
            <TextBlock Text="{Binding FullName}" TextAlignment="Left"/>
        </DataTemplate>
    </my:AutoCompleteBox.ItemTemplate>
    </my:AutoCompleteBox>

Пожалуйста, используйте setter свойство AutoCompleteBox, чтобы установить выравнивание текста следующим образом:

<toolkit:AutoCompleteBox.TextBoxStyle>
    <Style TargetType="TextBox">
    <Setter Property="TextAlignment" Value="Center"></Setter>
    </Style>
</toolkit:AutoCompleteBox.TextBoxStyle> 

Спасибо...

Взгляните на следующий URL http://social.msdn.microsoft.com/Forums/en-US/silverlightarchieve/thread/d41d201d-834f-4f8a-8b78-122ff08dd830/ это может помочь.

Другие вопросы по тегам