首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 媒体动画 > CAD教程 >

求教!SL中TextBox文字对齐有关问题

2012-08-30 
求教!SL中TextBox文字对齐问题!一个登录窗口,用户名输入框用TextBox控件,密码输入用PasswordBox。但这两个

求教!SL中TextBox文字对齐问题!
一个登录窗口,用户名输入框用TextBox控件,密码输入用PasswordBox。但这两个控件我都增大了它们的高度,这样就出现了个问题,文字显示位置还是靠上,介个问题怎么解决呢?

[解决办法]
TextAlignment="Center"
另外建议楼主用Blend绘制silverlight界面,效果很好
[解决办法]

探讨

引用:
Textbox里面文字上下方向就是居中的啊!

PasswordBox可以用这个属性设置BorderThickness="1,11,0,1",不过颜色要去掉


我试了不是的,TextBox里面的文字是靠左上对齐的。实在不行就把字改大吧!

[解决办法]
<Style TargetType="TextBox" x:Name="myTextBox">
<Setter Property="FontSize" Value="13"></Setter>
<Setter Property="Text" Value="http://"></Setter>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="TextBox">
<Grid x:Name="RootElement">
<Border x:Name="Border" BorderThickness="1" CornerRadius="0" Background="White" BorderBrush="Silver">
<ScrollViewer x:Name="ContentElement" VerticalAlignment="Center" BorderThickness="0" IsTabStop="False"/>
</Border>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>

想怎么对齐,改ScrollViewer 就可以了.
[解决办法]
<Style TargetType="PasswordBox">
<Setter Property="BorderThickness" Value="1" />
<Setter Property="Background" Value="#FFFFFFFF" />
<Setter Property="Foreground" Value="#FF000000" />
<Setter Property="Padding" Value="2" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="PasswordBox">
<Grid x:Name="RootElement">
<Border x:Name="Border" BorderThickness="{TemplateBinding BorderThickness}" CornerRadius="1" Opacity="1" Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}">
<Border x:Name="MouseOverBorder" BorderThickness="1" BorderBrush="Transparent">
<Border x:Name="ContentElement" VerticalAlignment="Center" Margin="{TemplateBinding Padding}"/>
</Border>
</Border>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>

热点排行