Silverlight的文字输入功能




   众所周知,在目前这个阶段,Silverlight并没有所谓的TextBox控件可以输入文字,因此,想要在Silverlight当中输入文字必须使用ASP.NET的TextBox控件来充当文字的输入功能
  这部份该如何作呢?这就要讨论到Xaml控件的WindowsLess属性了,其实该属性是Xaml控件当中相当重要的属性之一,它让ASP.NET的控件与Silverlight之间可以彼此合作,例如下图这样的状况:


  上图中的文字输入功能,其实并非是Silverlight所提供的,如您所知,Silverlight目前并没有所谓的控件,因此也没有办法直接输入文字,但是我们可以和ASP.NET的TextBox控件加以配合,让Silverlight模拟出输入的功能
  其实设计的方式很简单,我们只需要通过Blend2把外框先绘制好:

  接着把xaml code引用至Xaml控件中,然后关键的部份来了,请务必把Xaml控件的WindowsLess属性设为True,同时在Xaml控件上“叠上”TextBox对象(注意要把TextBox的Style设为position: absolute且将ZIndex设为大于Xaml控件,并通过“样式”功能,把TextBox的边框消除:

  完成后,其HTML代码如下:

  请注意,这个技巧在设计RIA时相当常见,读者可参考书附光盘中的范例“SilverlightStudyHostCom/Demo/AniBackground/Default.aspx”来了解设计的方式。
  我们未来会介绍如何通过这样的方式,让使用者在Silverlight界面上输入文字,并通过AJAX技术传递给后端的ASP.NET程序。

资料来源: Silverlight权威讲座--ASP.NET整合秘技与独家案例剖析(董大伟 - 旗标)

相关文章

如何在Silverlight4(XAML)中绑定IsEnabled属性?我试过简单的...
我正在编写我的第一个vb.net应用程序(但我也会在这里标记c#,...
ProcessFile()是在UIThread上运行还是在单独的线程上运行.如...
我从同行那里听说,对sharepoint的了解对职业生涯有益.我们不...
我正在尝试保存一个类我的类对象的集合.我收到一个错误说明:...
我需要根据Silverlight中的某些配置值设置给定控件的Style.我...