垂直对齐使命令栏内容中的文本框中心化

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (35)

我遇到了一个问题,试图在命令栏内容中(垂直)设置一个文本框。

实际上我有这个(看最后第三行):

<CommandBar Grid.Row="0" FlowDirection="LeftToRight">
    <AppBarButton x:Name="Back" Icon="Back" Label="Back" Click="Back_Click"/>
    <AppBarButton x:Name="Forward" Icon="Forward" Label="Forward" Click="Forward_Click"/>
    <AppBarButton x:Name="Refresh" Icon="Refresh" Label="Refresh" Click="Refresh_Click"/>
    <AppBarButton x:Name="Cancel" Icon="Cancel" Label="Cancel" Click="Refresh_Click"/>
    <AppBarButton x:Name="Home" Icon="Home" Label="Home" Click="Home_Click"/>
    <CommandBar.Content>
        <TextBox x:Name="Value"  VerticalAlignment="Center" KeyDown="Value_KeyDown" HorizontalAlignment="Center" Margin="0,0,0,0" Width="880"/>
    </CommandBar.Content>
</CommandBar>

问题是,我看到了一些指南,人们写的都是对他们有用的东西,但对我却没有用。我不知道该怎么做,我已经尝试过使用VisualStudio 2017的设计视图来处理网格、相关面板、堆栈面板等等,但我还没有找到解决方案。

提问于
用户回答回答于

这听起来像是一个懒散的答案,但要达到您想要的外观,最简单的方法就是简单地使用Margin属性的依赖项。TextBox控制室。

通过改变TextBox定义如下,它看起来是垂直中心的:

<TextBox Text="Now playing" KeyDown="Value_KeyDown" Margin="12,8" Width="880"/>

除非处理了CommandBar,并改变其Content属性的定义,我认为这是迄今为止最简单的选择。

我们实际上可以看到,它们使用相同的技术将定义的TextBlock

<CommandBar.Content>
    <TextBlock Text="Now playing..." Margin="12,14"/>
</CommandBar.Content>

所属标签

可能回答问题的人

  • 华讯云

    0 粉丝0 提问7 回答
  • gulu丶咕噜

    0 粉丝1 提问5 回答
  • 女淘日记

    杭州吱吱吱科技 · 站长 (已认证)

    1 粉丝1 提问3 回答
  • 卓脑域名

    0 粉丝0 提问3 回答

扫码关注云+社区

领取腾讯云代金券