Silverlight 真是一个不错的开发平台,想到即将发布的Silverlight 4 更是增加了像去学习他的兴趣。

信息显示控件

 

TextBlock

image

信息显示第一个要说的一定是TextBlock,他是最基础的文本显示块控件,通过属性可以更改文字的字体,大小,颜色、下划线、粗体等等

<TextBlock Text="信息显示控件示例-TextBlock" Margin="10,5,0,0"
               FontSize="18" FontWeight="Bold" Foreground="#FFBE4D4D"/>
<TextBlock Canvas.Left="10" Canvas.Top="160" FontStretch="UltraExpanded">
        文本内容</TextBlock>

 

Label

image

Label 标签控件在功能上和TextBlock类似用来显示文本,但文本设置属性是Content,而TextBlock 是Text属性

当你从工具箱中拖动进来一个Label 控件后,Visual Studio 会为你添加一个空间的引用

<UserControl
xmlns:dataInput="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Data.Input">
 <dataInput:Label Background="Blue" Foreground="White" FontWeight="Bold" 
            Content="Silverlight " FontSize="60" />

ProgressBar

image

进度条控件,用来提示用户当前程序正在运行的进度。

<ProgressBar Name="indeterminateProgressBar" IsIndeterminate="True"
                 HorizontalAlignment="Left" Height="20" Width="260"
                 Margin="10,5,0,0" />

 

IsIndeterminate="True" 这个属性很重要,用来设置进度条是否要呈现进度,True代表不呈现进度,而是反复的播放动画。

ToolTipService

ToolTipService 用来为其他控件添加提示,这个提示可以是文本也可以是任何XAML元素,图片、链接都可以作为提示的一部分。

<Image Source="/Images/logo.jpg" Margin="10" 
           ToolTipService.Placement="Mouse"
           ToolTipService.ToolTip="这a是?Silverlight标ê志?!?"/>
<Button Width="320" Height="80" Content="这a是?Silverlight标ê志?!?" 
               FontSize="30" Canvas.Top="110" Canvas.Left="20" >
        <ToolTipService.ToolTip>
            <Image Source="/Images/logo.jpg"/>
        </ToolTipService.ToolTip>
    </Button>

 

Calendar

image

日期选择控件,通过触发事件,可以获得选择的日期,并处理。

<UserControl xmlns:basics="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls"

<basics:Calendar Name="calendar1" Grid.Row="1" 
                     HorizontalAlignment="Left" Margin="10,0,0,0" >
    </basics:Calendar>
    //选择日期发生变化时引发事件
    this.calendar1.SelectedDatesChanged +=
        new EventHandler<SelectionChangedEventArgs>
            (calendar1_SelectedDatesChanged);
// 选?择?的?日?期ú发¢生ú变?化ˉ
private void calendar1_SelectedDatesChanged(object sender
    , SelectionChangedEventArgs e)
{
    this.tbSelectedCanlendar.Text = "选?择?的?日?期ú是?:o"
        + calendar1.SelectedDate.ToString();
}

 

 

信息编辑控件

 

TextBox

image

TextBox 最熟悉不过的文本输入框,可以输入单行文本,也可以输入多行文本。

 <TextBox x:Name="TextBox"  Text="文?字?内ú容Y"
                 TextChanged="TB_TextChanged"
                 IsReadOnly="False" HorizontalAlignment="Left" 
                 Margin="20,5,0,0" Width="300" />

 

PasswordBox

image

密码输入框,和TextBox一样,只是不显示你输入的内容是什么

<PasswordBox Name="passwordBox2" Password="密ü码?内ú容Y" 
                     HorizontalAlignment="Left" Width="300" Margin="10,10,0,0">   
        </PasswordBox>

 

AutoCompleteBox

示例取自:Silverlight 开发详解一书

image

自动完成窗口,输入文字的第一个字符,就会匹配存储好的字符串,给出提示下拉列表框,像Google输入框一样

 <TextBlock Text="AutoCompleteBox控件演示" FontSize="18" Margin="5"/>
        <StackPanel x:Name="Layou" Orientation="Horizontal">
            <TextBlock Text="请输入关键字:" FontSize="15" Margin="5"/>
            <controls:AutoCompleteBox x:Name="acBox" 
                                   FontSize="15" Width="265"/>
        </StackPanel>
 //创′建¨AutoCompleteBox数y据Y源′集ˉ合?
  List<string> items = new List<string>();
  items.Add("Silverlight 3 发¢布?了?");
  items.Add("Silverlight是?新?一?代úRIA技?术?!?");
  items.Add("Silverlight 3支§持?H.264和íAAC格?式?!?");
  items.Add("Silverlight 3支§持?3-D特?效§!?");
  //绑ó定¨数y据Y源′
  acBox.ItemsSource = items;

DatePicker

image

DatePicker和Calendar 控件所要达到的目的是一样的,都是用于让用户输入日期,但是DatePicker控件用的比较多,因为他很节省UI布局空间。

<basics:DatePicker Name="datePicker2" Grid.Row="5" Width="200" 
                       HorizontalAlignment="Left"  Margin="10,5,0,0" 
                       SelectedDateFormat="Long"/>
SelectedDateFormat="Long" 这个属性很重要,他用来设置文本框中的日期格式,是简单的还是复杂的
posted on 2010-02-14 12:29  冯瑞涛  阅读(886)  评论(0编辑  收藏  举报