WPF 中的 StatusBarItem 类有什么意义?
StatusBarItem
怎么样 应该使用类吗? StatusBar
内容中的每个元素都应该用它包裹吗?
我不太明白 StatusBarItem
如何影响 StatusBar
布局。似乎我可以在 StatusBarItem
上使用 HorizontalAlignment
,但当我直接将元素放入 StatusBar
中时不能使用:
<StatusBar>
<TextBlock HorizontalAlignment="Right" Text="Not right" />
<StatusBarItem HorizontalAlignment="Center">
<TextBlock Text="Center" />
</StatusBarItem>
</StatusBar>
此外,如果您包装 < StatusBarItem
中的 code>Separator 的 Separator
更改为水平。当直接放入 StatusBar
而不使用 StatusBarItem
包装器时,Separator
默认为垂直。
How is the StatusBarItem
class supposed to be used? Is every element in a StatusBar
's content supposed to be wrapped with it?
I don't really understand how StatusBarItem
affects the StatusBar
layout. It seems like I can use HorizontalAlignment
on a StatusBarItem
, but not when I put the element in the StatusBar
directly:
<StatusBar>
<TextBlock HorizontalAlignment="Right" Text="Not right" />
<StatusBarItem HorizontalAlignment="Center">
<TextBlock Text="Center" />
</StatusBarItem>
</StatusBar>
Also if you wrap a Separator
in a StatusBarItem
the Separator
changes to horizontal. Separator
s default to vertical when put in the StatusBar
directly without a StatusBarItem
wrapper.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
StatusBar
是一个ItemsControl
。所有ItemsControl
都有一个容器类。对于ListBox
来说,它是ListBoxItem
。对于StatusBar
,它是StatusBarItem
。如果您没有将您的项目显式包装在StatusBarItem
中,它将隐式地为您包装在其中。如果您需要设置
ItemsControl
容器的属性,可以使用ItemContainerStyle
属性:最后,请注意
StatusBar
使用 < code>DockPanel 默认情况下布置其子项。当您进行复杂的布局时,这可能会令人沮丧。请参阅我的博客文章此处了解如何将其替换为 <代码>网格。A
StatusBar
is anItemsControl
. AllItemsControl
s have a container class. ForListBox
es, it'sListBoxItem
. ForStatusBar
, it'sStatusBarItem
. If you don't explicitly wrap your item in aStatusBarItem
, it will be implicitly wrapped in one for you.If you need to set properties of an
ItemsControl
's containers, you can use theItemContainerStyle
property:Finally, note that the
StatusBar
uses aDockPanel
by default to lay out its children. This can be frustrating when you're doing intricate layouts. See my blog post here on how to swap it out for aGrid
.