Home ? Source Code ? XAML only WPF Watermarked TextBox

XAML only WPF Watermarked TextBox

maninwest
2015-03-06 01:54:28
The author
View(s):
Download(s): 1
Point (s): 1?
Category Category:
XAMLXAML C SharpC#

Description

Translated by [email protected] Author:[email protected]
A lot of the examples I found on how to add a watermark to a TextBox involve a significant amount of code-behind, handling text changed events, or making use of a customIValueConverterorIMultiValueConverter. In this article, I'll show how to add a watermark to a TextBox by only using XAML markup.
Background
A demonstration project I recently worked on was pre-setting the text of a textbox as kind of a poor-man's watermark. But when you started typing in the box, you have to first clear away the default value. That's not a watermark, that's just annoying. I wanted to fix this, but I didn't want to write a bunch of C# code to make it happen. I knew it could be done in XAML.
Using the code
Let's just jump right to it

    
    
        
            
        
    

First we wrap everthing in aGrid. We'll use this as a container to define our overall layout. Then we add ourTextBoxfor user input, and ourTextBlockas our watermark. Since we don't specify row and column definitions, these controls will overlap - and we want that; a watermark should visually appear on top of a textbox. On our TextBlock however, we don't want it be included in any hit test results, so we'll set the IsHitTestVisible property to false.
For theTextBlock's style, we'll default it to collapsed, and then set it to visible when our DataContext's Text property does not have content AND when the TextBox does not have keyboard focus.
And that's it! No converters, no extensions, just pure XAML.

Sponsored links

File list

Tips: You can preview the content of files by clicking file names^_^
Name Size Date
WatermarkExample.sln1,017.00 B2015-03-04 22:11
01.97 kB
App.config189.00 B2015-03-04 22:11
App.xaml587.00 B2015-03-04 22:11
App.xaml.cs349.00 B2015-03-04 22:11
MainWindow.xaml2.18 kB2015-03-04 22:11
MainWindow.xaml.cs682.00 B2015-03-04 22:11
packages.config296.00 B2015-03-04 22:11
01.97 kB
AssemblyInfo.cs2.24 kB2015-03-04 22:11
Resources.Designer.cs2.79 kB2015-03-04 22:11
Resources.resx5.48 kB2015-03-04 22:11
Settings.Designer.cs1.08 kB2015-03-04 22:11
Settings.settings201.00 B2015-03-04 22:11
01.97 kB
MainViewModel.cs1.60 kB2015-03-04 22:11
ViewModelLocator.cs1.36 kB2015-03-04 22:11
WatermarkExample.csproj5.53 kB2015-03-04 22:11
...
Sponsored links

Comments

(Add your comment, get 0.1 Point)
Minimum:15 words, Maximum:160 words
qiuchenzhimeng
2015-04-23

多謝樓主的分析哈,非常感謝。這個文件對我非常有用,消除鋸齒效果很不錯

2063162649
2017-01-20

多謝樓主的分析哈,非常感謝。這個文件對我非常有用,消除鋸齒效果很不錯

  • 1
  • Page 1
  • Total 1

XAML only WPF Watermarked TextBox (11.36 kB)

Need 1 Point(s)
Your Point (s)

Your Point isn't enough.

Get 22 Point immediately by PayPal

Point will be added to your account automatically after the transaction.

More(Debit card / Credit card / PayPal Credit / Online Banking)

Submit your source codes. Get more Points

LOGIN

Don't have an account? Register now
Need any help?
Mail to: [email protected]

切換到中文版?

CodeForge Chinese Version
CodeForge English Version

Where are you going?

^_^"Oops ...

Sorry!This guy is mysterious, its blog hasn't been opened, try another, please!
OK

Warm tip!

CodeForge to FavoriteFavorite by Ctrl+D
全民欢乐捕鱼攻略技巧 内蒙古快3开奖结果 重庆时时彩开奖视频直 抖音刮刮乐图片 河北快3开奖查询 快乐赛车国际官方网站 金牛游戏中心 金牛棋牌 秒速飞艇走势图如何看 竞彩足球指数分析法 伯乐彩票网址 中国移动店面赚钱吗 湖南快乐十分走势图一基本走势图 江西体彩多乐彩玩法 北京赛车技巧压法 足球比分直播网站足球外围网站推荐 快速时时彩开奖记录 儿童室内游乐园赚钱不