Отразить ориентацию всплывающей подсказки к горизонтали внутри вертикальной панели стека - PullRequest
0 голосов
/ 18 апреля 2020

Как получить всплывающую подсказку в горизонтальном направлении, если она прикреплена к одному элементу управления, который находится внутри стековой панели с установленным для него свойством orientation по вертикали?

<Window x:Class="WPF.WindowTest"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:WPF"
        mc:Ignorable="d"
        Title="WindowTest" Height="450" Width="800">    

    <Grid>       
        <StackPanel Orientation="Vertical">
            <Label Content="Label"></Label>
            <TextBox Text="Hello world" Width="100" HorizontalAlignment="left">
                <TextBox.ToolTip>
                    <ToolTip DataContext="{Binding RelativeSource={RelativeSource Self}, Path=PlacementTarget}">
                     <ItemsControl ItemsSource="{Binding Path=Text}"/>
                    </ToolTip>
                </TextBox.ToolTip>
            </TextBox>
            <Label Content="Label2"></Label>
            <Label Content="Label3"></Label>
        </StackPanel>
    </Grid>
</Window>

tooltip

1 Ответ

0 голосов
/ 18 апреля 2020

Я не могу получить то, что вы хотите.

Если вы хотите, чтобы Hello World отображался горизонтально, а не по вертикали.

2 варианта:

1) Замените ItemsControl с помощью текстового блока или чего-то еще.

2) Измените расположение панели элементов вашего ItemsControl. Например:

<ItemsControl.ItemsPanel>
    <ItemsPanelTemplate>
        <StackPanel Orientation="Horizontal"/>
    </ItemsPanelTemplate>
</ItemsControl.ItemsPanel>

Поведение ItemsControl по умолчанию заключается в отображении элементов в вертикальной ориентации, таких как ListBox и т. Д. c. Когда вы связываете строку как itemsSource, это как если бы вы указали массив char. Итак, ваша коллекция состоит из символа. Вот почему вы получаете вертикальный список символов, который является ожидаемым поведением по умолчанию.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...