[索引页]
[源码下载]
作者: webabcd
介绍
Silverlight 2.0 控件一览:Border,ComboBox
在线DEMO
http://www.voidcn.com/article/p-ounmxjds-tq.html
示例
1、Border.xaml
[源码下载]
作者: webabcd
介绍
Silverlight 2.0 控件一览:Border,ComboBox
在线DEMO
http://www.voidcn.com/article/p-ounmxjds-tq.html
示例
1、Border.xaml
<UserControl x:Class="Silverlight20.Control.Border"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<StackPanel HorizontalAlignment="Left">
<!--
BorderThickness - 边框的宽度(像素值:上下左右;左右,上下;左,上,右,下)
BorderBrush - 边框的颜色
CornerRadius - 边框角的半径
-->
<Border BorderThickness="1,3,5,7" BorderBrush="Red" CornerRadius="10" Width="120" Margin="5">
<TextBlock Text="红色Border" ToolTipService.ToolTip="红色Border" TextAlignment="Center" />
</Border>
<!--
Border.BorderBrush - 继承自 System.Windows.Media.Brush 的对象
-->
<Border BorderThickness="3" CornerRadius="10" Width="120" Margin="5">
<TextBlock Text="红色Border" ToolTipService.ToolTip="红色Border" TextAlignment="Center" />
<Border.BorderBrush>
<ImageBrush ImageSource="http://silverlight.net/Themes/silverlight/images/logo.jpg" />
</Border.BorderBrush>
</Border>
</StackPanel>
</UserControl>
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<StackPanel HorizontalAlignment="Left">
<!--
BorderThickness - 边框的宽度(像素值:上下左右;左右,上下;左,上,右,下)
BorderBrush - 边框的颜色
CornerRadius - 边框角的半径
-->
<Border BorderThickness="1,3,5,7" BorderBrush="Red" CornerRadius="10" Width="120" Margin="5">
<TextBlock Text="红色Border" ToolTipService.ToolTip="红色Border" TextAlignment="Center" />
</Border>
<!--
Border.BorderBrush - 继承自 System.Windows.Media.Brush 的对象
-->
<Border BorderThickness="3" CornerRadius="10" Width="120" Margin="5">
<TextBlock Text="红色Border" ToolTipService.ToolTip="红色Border" TextAlignment="Center" />
<Border.BorderBrush>
<ImageBrush ImageSource="http://silverlight.net/Themes/silverlight/images/logo.jpg" />
</Border.BorderBrush>
</Border>
</StackPanel>
</UserControl>
2、Button.xaml
<UserControl x:Class="Silverlight20.Control.Button"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<StackPanel HorizontalAlignment="Left" Width="400">
<!--
Content - 按钮上显示的内容
Click - 按钮的单击事件
Cursor - 鼠标移动到按钮上面时,鼠标指针的样式
Arrow - 箭头
Hand - 手形
Wait - 沙漏
IBeam - “I”字形
Stylus - 点
Eraser - 橡皮
None - 无
Padding - 容器内的内容与容器边缘的填充距离(像素值:上下左右;左右,下)
-->
<Button Tag="我是Button" Content="我是Button" Cursor="Eraser" Click="Button_Click" Padding="5" Margin="5" />
<!--
IsEnabled - 按钮是否有效
-->
<Button Tag="无效Button" Content="无效Button" IsEnabled="False" Click="Button_Click" Margin="5" />
<!--
Button.Content - 按钮上显示的内容
ClickMode - 触发单击事件的类型 [System.Windows.Controls.ClickMode枚举]
ClickMode.Press - 鼠标左键单击
ClickMode.Release - 鼠标左键单击并放开
ClickMode.Hover - 鼠标经过
-->
<Button Tag="图片Button" ClickMode="Release" Click="Button_Click" Margin="5">
<Button.Content>
<Image Source="/Silverlight20;component/Images/logo.jpg" />
</Button.Content>
</Button>
</StackPanel>
</UserControl>
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<StackPanel HorizontalAlignment="Left" Width="400">
<!--
Content - 按钮上显示的内容
Click - 按钮的单击事件
Cursor - 鼠标移动到按钮上面时,鼠标指针的样式
Arrow - 箭头
Hand - 手形
Wait - 沙漏
IBeam - “I”字形
Stylus - 点
Eraser - 橡皮
None - 无
Padding - 容器内的内容与容器边缘的填充距离(像素值:上下左右;左右,下)
-->
<Button Tag="我是Button" Content="我是Button" Cursor="Eraser" Click="Button_Click" Padding="5" Margin="5" />
<!--
IsEnabled - 按钮是否有效
-->
<Button Tag="无效Button" Content="无效Button" IsEnabled="False" Click="Button_Click" Margin="5" />
<!--
Button.Content - 按钮上显示的内容
ClickMode - 触发单击事件的类型 [System.Windows.Controls.ClickMode枚举]
ClickMode.Press - 鼠标左键单击
ClickMode.Release - 鼠标左键单击并放开
ClickMode.Hover - 鼠标经过
-->
<Button Tag="图片Button" ClickMode="Release" Click="Button_Click" Margin="5">
<Button.Content>
<Image Source="/Silverlight20;component/Images/logo.jpg" />
</Button.Content>
</Button>
</StackPanel>
</UserControl>
Button.xaml.cs
3、Calendar.xaml
<!--
Calendar控件的命名空间和其他控件一样,都是在System.Windows.Controls下
但是其是在System.Windows.Controls.dll程序集中定义的
所以要引入相应的xml命名空间
-->
<UserControl x:Class="Silverlight20.Control.Calendar"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:basics="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls">
<StackPanel HorizontalAlignment="Left">
<TextBox x:Name="txtMsg" Margin="5" />
<!--
SelectedDatesChanged - 选中日期后所触发的事件
displayDateEnd - 此日期之后的日期不予显示
displayDateStart - 此日期之前的日期不予显示
FirstDayOfWeek - 控件所显示的每星期的第一天为星期几 [System.DayOfWeek枚举]
displayMode - 控件的显示模式 [System.Windows.Controls.displayMode枚举]
displayMode.Month - 标题显示年月,内容显示日期。默认值
displayMode.Year - 标题显示年,内容显示月
displayMode.Decade - 标题显示一个十年的区间,内容显示年
IsTodayHighlighted - 是否高亮显示今天的日期
-->
<basics:Calendar x:Name="calendar" Margin="5" FirstDayOfWeek="Monday"
SelectedDatesChanged="calendar_SelectedDatesChanged">
</basics:Calendar>
<StackPanel Orientation="Horizontal">
<CheckBox Content="禁止选择今天以前的日期" Margin="5"
Checked="CheckBox_Checked" Unchecked="CheckBox_Unchecked" />
<RadioButton GroupName="selectionMode" x:Name="SingleDate" Content="可选单一日期" Margin="5"
Checked="selectionMode_Changed" />
<RadioButton GroupName="selectionMode" x:Name="None" Content="不可选日期" Margin="5"
Checked="selectionMode_Changed" />
<RadioButton GroupName="selectionMode" x:Name="SingleRange" Content="可选连续日期(shift)" Margin="5"
Checked="selectionMode_Changed" />
<RadioButton GroupName="selectionMode" x:Name="MultipleRange" Content="可选多个日期(ctrl)" Margin="5"
Checked="selectionMode_Changed" />
</StackPanel>
</StackPanel>
</UserControl>
Calendar控件的命名空间和其他控件一样,都是在System.Windows.Controls下
但是其是在System.Windows.Controls.dll程序集中定义的
所以要引入相应的xml命名空间
-->
<UserControl x:Class="Silverlight20.Control.Calendar"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:basics="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls">
<StackPanel HorizontalAlignment="Left">
<TextBox x:Name="txtMsg" Margin="5" />
<!--
SelectedDatesChanged - 选中日期后所触发的事件
displayDateEnd - 此日期之后的日期不予显示
displayDateStart - 此日期之前的日期不予显示
FirstDayOfWeek - 控件所显示的每星期的第一天为星期几 [System.DayOfWeek枚举]
displayMode - 控件的显示模式 [System.Windows.Controls.displayMode枚举]
displayMode.Month - 标题显示年月,内容显示日期。默认值
displayMode.Year - 标题显示年,内容显示月
displayMode.Decade - 标题显示一个十年的区间,内容显示年
IsTodayHighlighted - 是否高亮显示今天的日期
-->
<basics:Calendar x:Name="calendar" Margin="5" FirstDayOfWeek="Monday"
SelectedDatesChanged="calendar_SelectedDatesChanged">
</basics:Calendar>
<StackPanel Orientation="Horizontal">
<CheckBox Content="禁止选择今天以前的日期" Margin="5"
Checked="CheckBox_Checked" Unchecked="CheckBox_Unchecked" />
<RadioButton GroupName="selectionMode" x:Name="SingleDate" Content="可选单一日期" Margin="5"
Checked="selectionMode_Changed" />
<RadioButton GroupName="selectionMode" x:Name="None" Content="不可选日期" Margin="5"
Checked="selectionMode_Changed" />
<RadioButton GroupName="selectionMode" x:Name="SingleRange" Content="可选连续日期(shift)" Margin="5"
Checked="selectionMode_Changed" />
<RadioButton GroupName="selectionMode" x:Name="MultipleRange" Content="可选多个日期(ctrl)" Margin="5"
Checked="selectionMode_Changed" />
</StackPanel>
</StackPanel>
</UserControl>
Calendar.xaml.cs
4、Canvas.xaml
<UserControl x:Class="Silverlight20.Control.Canvas"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" HorizontalAlignment="Left">
<!--
Canvas - 绝对布局模式
Canvas.Left - 与上一层 Canvas 的 Y轴 间的距离,左上角为原点
Canvas.Top - 与上一层 Canvas 的 X轴 间的距离,左上角为原点
-->
<Canvas Background="Red" Width="100" Height="100">
<Canvas Background="Green" Width="100" Height="100" Canvas.Left="120" Canvas.Top="120" >
<TextBlock Text="TextBlock" Canvas.Top="20" />
</Canvas>
</Canvas>
</UserControl>
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" HorizontalAlignment="Left">
<!--
Canvas - 绝对布局模式
Canvas.Left - 与上一层 Canvas 的 Y轴 间的距离,左上角为原点
Canvas.Top - 与上一层 Canvas 的 X轴 间的距离,左上角为原点
-->
<Canvas Background="Red" Width="100" Height="100">
<Canvas Background="Green" Width="100" Height="100" Canvas.Left="120" Canvas.Top="120" >
<TextBlock Text="TextBlock" Canvas.Top="20" />
</Canvas>
</Canvas>
</UserControl>
<UserControl x:Class="Silverlight20.Control.CheckBox"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<StackPanel>
<!--
IsChecked - 是否被选中
-->
<CheckBox x:Name="chk1" Content="我是CheckBox" IsChecked="False" Margin="5" />
<!--
IsThreeState - 是否是 有3个状态 的CheckBox
false - 通常的两状态。默认值
true - 有3个状态,分别为:true,false,null。也就是说 CheckBox.IsChecked 是 bool? 类型
-->
<CheckBox x:Name="chk2" Content="红色的三状态的CheckBox" Background="Red" IsThreeState="True" Margin="5" />
<!--
IsEnabled - CheckBox是否有效
-->
<CheckBox x:Name="chk3" Content="无效的CheckBox" IsEnabled="False" Margin="5"/>
<!--
CheckBox.Content - CheckBox所对应的内容
Checked - 被选中后所触发的事件
Unchecked - 被取消选中后所触发的事件
Click - 被单击后所触发的事件
-->
<CheckBox x:Name="chk4" Checked="Button_Click" Margin="5">
<CheckBox.Content>
<Image Source="/Silverlight20;component/Images/logo.jpg" Width="100" />
</CheckBox.Content>
</CheckBox>
<Button Content="各个CheckBox的选中状态" Width="200" HorizontalAlignment="Left" Click="Button_Click" Margin="5" />
</StackPanel>
</UserControl>
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<StackPanel>
<!--
IsChecked - 是否被选中
-->
<CheckBox x:Name="chk1" Content="我是CheckBox" IsChecked="False" Margin="5" />
<!--
IsThreeState - 是否是 有3个状态 的CheckBox
false - 通常的两状态。默认值
true - 有3个状态,分别为:true,false,null。也就是说 CheckBox.IsChecked 是 bool? 类型
-->
<CheckBox x:Name="chk2" Content="红色的三状态的CheckBox" Background="Red" IsThreeState="True" Margin="5" />
<!--
IsEnabled - CheckBox是否有效
-->
<CheckBox x:Name="chk3" Content="无效的CheckBox" IsEnabled="False" Margin="5"/>
<!--
CheckBox.Content - CheckBox所对应的内容
Checked - 被选中后所触发的事件
Unchecked - 被取消选中后所触发的事件
Click - 被单击后所触发的事件
-->
<CheckBox x:Name="chk4" Checked="Button_Click" Margin="5">
<CheckBox.Content>
<Image Source="/Silverlight20;component/Images/logo.jpg" Width="100" />
</CheckBox.Content>
</CheckBox>
<Button Content="各个CheckBox的选中状态" Width="200" HorizontalAlignment="Left" Click="Button_Click" Margin="5" />
</StackPanel>
</UserControl>
CheckBox.xaml.cs
6、ComboBox.xaml
<UserControl x:Class="Silverlight20.Control.ComboBox"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<StackPanel HorizontalAlignment="Left">
<!--
XAML方式构造ComboBox
-->
<ComboBox x:Name="cbo" Width="200" Margin="5">
<ComboBoxItem Content="ComboBoxItem1" />
<ComboBoxItem Content="ComboBoxItem2" />
<ComboBoxItem Content="ComboBoxItem3" />
</ComboBox>
<!--
后台邦定方式构造ComboBox
displayMemberPath - 数据源中需要被显示出来的字段名称
MaxDropDownHeight - 下拉框的最大下拉高度
-->
<ComboBox x:Name="cbo2" displayMemberPath="Name" MaxDropDownHeight="100" Width="200" Margin="5" />
</StackPanel>
</UserControl>
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<StackPanel HorizontalAlignment="Left">
<!--
XAML方式构造ComboBox
-->
<ComboBox x:Name="cbo" Width="200" Margin="5">
<ComboBoxItem Content="ComboBoxItem1" />
<ComboBoxItem Content="ComboBoxItem2" />
<ComboBoxItem Content="ComboBoxItem3" />
</ComboBox>
<!--
后台邦定方式构造ComboBox
displayMemberPath - 数据源中需要被显示出来的字段名称
MaxDropDownHeight - 下拉框的最大下拉高度
-->
<ComboBox x:Name="cbo2" displayMemberPath="Name" MaxDropDownHeight="100" Width="200" Margin="5" />
</StackPanel>
</UserControl>
ComboBox.xaml.cs
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。