Silverlight跨浏览器支持已经有了长足的进步,而且与.NET开发语言的完美结合,这些都使得在Windows平台下开发富客户端应用Silverlight应该比Flash更有优势,当然Silverlight代替Flash应该为时尚早,而且现有的功能与Flash仍有不小差距,但是对于开发者而言早一点接触、使用的话,对于改进网站用户的体验,提高网站的交互能力和界面很有帮助。
文件下载部分的实现比较容易,后续会发布基于Silverlight的下载界面以及代码。
上传页面构成:
DataGrid控件用于显示用户选定的待上传文件;
按钮“选择上传文件”点击之后打开选择文件对话框用户可以选择多个文件;
按钮“清除”,点击之后将DataGrid中的内容清空;
按钮“上传”,点击之后如果DataGrid中内容不为空,则开始逐个上传所有文件。 页面如下图所示:

上述界面对应的page.xaml如下:
| <UserControl xmlns:basics="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls" x:Class="SilverlightApplication1.Page" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Height="600" Width="800" > <Grid x:Name="LayoutRoot" Background="YellowGreen" ShowGridLines="True" > <Grid.RowDefinitions> <RowDefinition Height="535"></RowDefinition> <RowDefinition Height="30"></RowDefinition> <RowDefinition Height="35"></RowDefinition> </Grid.RowDefinitions> <StackPanel Grid.Row="2" Orientation="Horizontal" > <Button Content="选择上传文件" x:Name="MyButton" Width="100" Height="20" Click="Mybutton_Click" Grid.Column="0" FontSize="12"></Button> <Button Content="清除" x:Name="MyReset" Width="100" Height="20" Click="MyReset_Click" Grid.Column="1" FontSize="12"></Button> <Button Content="上传" x:Name="Upload" Width="100" Height="20" Click="Upload_Click" Grid.Column="2" FontSize="12"></Button> </StackPanel> <StackPanel Grid.Row="1" VerticalAlignment="Center"> <ProgressBar Name="progFile" Height="20" Width="800"></ProgressBar> </StackPanel> <Grid Grid.Row="0"> <data:DataGrid Name="FileList" LoadingRow="DataGrid_LoadingRow"> </data:DataGrid> </Grid> </Grid> </UserControl> |
顶一下
(2)
100%
踩一下
(0)
0%

评论加载中....