水印控件windows phone中,制作一个自定义的密码输入框控件,含图片,有水印,星号显示
2013-05-28 23:23
531 查看
PS:今天上午,非常郁闷,有很多简单基础的问题搞得我有些迷茫,哎,代码几天不写就忘。目前又不当COO,还是得用心记代码哦!
最终结果:
关键点:
密码框中有图片之类的其他元素
在没有密码输入的时候,会表现诸如如图“密码”的水印
密码输入后,成“*”星号表现
新建一个控件,XAML代码如下:
每日一道理
“多难兴才”曾一度被人定为规律。请看:屈原被放逐而作《离骚》;司马迁受宫刑而作《史记》;欧阳修两岁丧父笃学而成才;曹雪芹举家食粥而写出了不朽的《红楼梦》;越王勾践卧薪尝胆而雪洗国耻;韩信遭胯下辱而统率百万雄兵……他们都是在与逆境搏斗中成为伟人的!
以下是CS代码:
聪明的你肯定明确了,好,就此结束!
文章结束给大家分享下程序员的一些笑话语录: 这个世界上只有10种人:懂得二进制的和不懂得二进制的。
---------------------------------
原创文章 By
水印和控件
---------------------------------
最终结果:
关键点:
密码框中有图片之类的其他元素
在没有密码输入的时候,会表现诸如如图“密码”的水印
密码输入后,成“*”星号表现
新建一个控件,XAML代码如下:
<UserControl xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:toolkit="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone.Controls.Toolkit" x:Class="ewlan.PassWordBoxWithIcon" mc:Ignorable="d" FontFamily="{StaticResource PhoneFontFamilyNormal}" FontSize="{StaticResource PhoneFontSizeNormal}" Foreground="{StaticResource PhoneForegroundBrush}" d:DesignWidth="480" Height="60" Width="400"> <Grid x:Name="LayoutRoot" Background="{StaticResource TransparentBrush}"> //用一个border实现外面的灰色边框 <Border BorderBrush="#FFBFBFBF" BorderThickness="2" Margin="0"> <StackPanel Orientation="Horizontal"> <Grid Margin="10,0,0,0"> <Image Name="rememberPassword" HorizontalAlignment="Center" Source="/Images/password_icon.png" Stretch="None" VerticalAlignment="Center" Margin="0"/> <Image Name="forgetPassword" Visibility="Collapsed" HorizontalAlignment="Center" Source="/Images/password_unlock_icon.png" Stretch="None" VerticalAlignment="Center" Margin="0"/> </Grid> <Grid Width="351"> //1.PhoneTextBox实现水印效果 //2.PasswordBox实现密码输入酿成“*”号效果 //3.两个控件做到大小分歧,为什么?一会再看! <toolkit:PhoneTextBox Hint="静态密码" x:Name="passwordWatermark" Margin="0" FontSize="24" Width="270" HorizontalAlignment="Left" BorderThickness="0" Height="70" VerticalAlignment="Center"/> <PasswordBox KeyDown="passwdInput_KeyDown" Margin="0" x:Name="passwdInput" MaxLength="20" LostFocus="PasswordLostFocus" Opacity="0" GotFocus="PasswordGotFocus" Password="{Binding Password, Mode=TwoWay}" FontSize="24" Width="270" HorizontalAlignment="Left" BorderThickness="0" Height="70" VerticalAlignment="Center"/> </Grid> </StackPanel> </Border> </Grid> </UserControl>
每日一道理
“多难兴才”曾一度被人定为规律。请看:屈原被放逐而作《离骚》;司马迁受宫刑而作《史记》;欧阳修两岁丧父笃学而成才;曹雪芹举家食粥而写出了不朽的《红楼梦》;越王勾践卧薪尝胆而雪洗国耻;韩信遭胯下辱而统率百万雄兵……他们都是在与逆境搏斗中成为伟人的!
以下是CS代码:
public partial class PassWordBoxWithIcon : UserControl { public PassWordBoxWithIcon() { InitializeComponent(); passWordBoxWithIconInstance = this; } //在手指头分开密码输入框后,检查水印表现逻辑 private void PasswordLostFocus(object sender, RoutedEventArgs e) { CheckPasswordWatermark(); } public void CheckPasswordWatermark() { //发明用户没有输入,则将PasswordBox置于透明,PhoneTextBox置于100%不透明,以表现水印 //用户有输入,则相反,目标是用户不再看到水印! var passwordEmpty = string.IsNullOrEmpty(passwdInput.Password.Trim()); passwordWatermark.Opacity = passwordEmpty ? 100 : 0; passwdInput.Opacity = passwordEmpty ? 0 : 100; } private void PasswordGotFocus(object sender, RoutedEventArgs e) { //用户触摸取得焦点时,我们让passwordbox显现出来,以供输入! passwordWatermark.Opacity = 0; passwdInput.Opacity = 100; } }
聪明的你肯定明确了,好,就此结束!
文章结束给大家分享下程序员的一些笑话语录: 这个世界上只有10种人:懂得二进制的和不懂得二进制的。
---------------------------------
原创文章 By
水印和控件
---------------------------------
相关文章推荐
- 一个有效的bat程序中输入密码不回显并显示星号*
- C控制台密码输入:输入一个字符显示一个星号
- 自定义dialog包含一个显示图片的listview
- C语言实现密码输入显示星号 VS2010 亲测通过 功能加强版
- 自定义View之自定义支付宝密码输入控件
- Android自定义类似支付宝密码输入的控件
- C语言实现 输入密码显示星号******
- 一个显示 OpenCV Mat 图像的自定义 Qt 控件
- datagridview中输入密码,显示星号*
- Swift - 使用AVPlayer制作一个音乐播放器2(后台播放、操作、图片显示)
- (转)自定义一个控件继承基类usercontrol,但是不能输入中文
- Linux终端下输入密码显示星号
- onchange,onpropertychange,oninput键盘输入和js赋值时区别,以及输入密码时显示的是星号
- android 自定义属性,分享一个自适应容器,多用于显示图片,保证图片不变形
- 制作一个控制台小程序,要求:用户可以在控制到录入学生的姓名,当用户输入quit(不区分大小写)时,程序停止接收用户输入,并且显示出学生个数及姓名
- iOS无法使用自定义密码输入控件(自带键盘)
- 4.设计一个Email邮箱注册应用程序。要求:用户输入完成单击“立即注册”按,判断“密码”和“确认密码”文本框内容是否一致,如果一致在立即注册按钮上方显示用户输入的邮件地址,运行结果如图所示。
- 一个很简单的图片上传后立即显示在页面的控件(c#)
- C#实现在控制台输入密码显示星号的方法
- 如何实现一个循环显示超长图片的控件