WPF Toolbar Separator
От: Osaka  
Дата: 02.06.11 12:13
Оценка:
<Separator/> оказывается повёрнутым набок. В поиске предлагают делать ему rotate http://ru.w3support.net/index.php?db=so&amp;id=1274370
Как его правильно делать, чтобы он правильно определял свою ориентацию автоматически, даже если юзер перетащит тулбар из горизонтального положения в вертикальное?
Re: WPF Toolbar Separator
От: MxMsk Португалия  
Дата: 03.06.11 06:21
Оценка:
Здравствуйте, Osaka, Вы писали:

O><Separator/> оказывается повёрнутым набок. В поиске предлагают делать ему rotate http://ru.w3support.net/index.php?db=so&amp;id=1274370

O>Как его правильно делать, чтобы он правильно определял свою ориентацию автоматически, даже если юзер перетащит тулбар из горизонтального положения в вертикальное?
Он и должен определять ее автоматически. По крайней мере в случае, когда ToolBar лежит в ToolBarTray. У тебя видимо есть какая-то специфика?
Re[2]: WPF Toolbar Separator
От: Аноним  
Дата: 03.06.11 16:01
Оценка:
M>У тебя видимо есть какая-то специфика?
Видимо, специфика — что итемы создаются биндингом.
Если жёстко создать в разметке, ориентируется правильно.

Воспроизводится на пустом wpf application:
<Window x:Class="WpfApplication6.MainWindow"
    xmlns=http://schemas.microsoft.com/winfx/2006/xaml/presentation
    xmlns:x=http://schemas.microsoft.com/winfx/2006/xaml
    Title="MainWindow" Height="350" Width="525" Loaded="Window_Loaded">
<ToolBarPanel Height="30">
    <ToolBar Height="30" x:Name="tb">
        <ToolBar.ItemTemplate>
            <DataTemplate>
                <Separator/>
            </DataTemplate>
        </ToolBar.ItemTemplate>
    </ToolBar>
</ToolBarPanel>
</Window>


private void Window_Loaded(object sender, RoutedEventArgs e)
{
    tb.ItemsSource = new[] { 1, 2, 3 };
}
Re[3]: WPF Toolbar Separator
От: Osaka  
Дата: 03.06.11 16:19
Оценка:
(в примере на ToolBarPanel а ToolBarTray — self fix.)
(хоть это и не влияет, сепаратор в любом варианте горизонтальный)
Re[4]: WPF Toolbar Separator
От: MxMsk Португалия  
Дата: 05.06.11 07:02
Оценка: 4 (1)
Здравствуйте, Osaka, Вы писали:

O>(в примере на ToolBarPanel а ToolBarTray — self fix.)

O>(хоть это и не влияет, сепаратор в любом варианте горизонтальный)
Чего-то в твоем примере не хватает. У меня, заменяй не заменяй, как в .Net 3.5, так и в .Net 4.0 в твоем примере никаких Separator-ов вообще не показывается. Попробуй-ка явно указать разделителю "тулбарный" стиль:
<Separator Style="{StaticResource {x:Static ToolBar.SeparatorStyleKey}}"/>
Re[5]: WPF Toolbar Separator
От: Osaka  
Дата: 05.06.11 16:31
Оценка:
>никаких Separator-ов вообще не показывается
он горизонтальный, отображается как точка по центру при запуске. Можно ширину явно задать.
>явно указать разделителю "тулбарный" стиль
стиль помог (выглядит при этом похуже (более flat) по сравнению с тем как если сделать rotate transform, но и так нормально)
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.