Здравствуйте, Osaka, Вы писали:
O>(в примере на ToolBarPanel а ToolBarTray — self fix.)
O>(хоть это и не влияет, сепаратор в любом варианте горизонтальный)
Чего-то в твоем примере не хватает. У меня, заменяй не заменяй, как в .Net 3.5, так и в .Net 4.0 в твоем примере никаких Separator-ов вообще не показывается. Попробуй-ка явно указать разделителю "тулбарный" стиль:
<Separator Style="{StaticResource {x:Static ToolBar.SeparatorStyleKey}}"/>
<Separator/> оказывается повёрнутым набок. В поиске предлагают делать ему rotate
http://ru.w3support.net/index.php?db=so&id=1274370
Как его правильно делать, чтобы он правильно определял свою ориентацию автоматически, даже если юзер перетащит тулбар из горизонтального положения в вертикальное?
Здравствуйте, Osaka, Вы писали:
O><Separator/> оказывается повёрнутым набок. В поиске предлагают делать ему rotate http://ru.w3support.net/index.php?db=so&id=1274370
O>Как его правильно делать, чтобы он правильно определял свою ориентацию автоматически, даже если юзер перетащит тулбар из горизонтального положения в вертикальное?
Он и должен определять ее автоматически. По крайней мере в случае, когда ToolBar лежит в ToolBarTray. У тебя видимо есть какая-то специфика?
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 };
}