创建Silverlight幻灯片控件

在这篇文章中,将向展示如何创建一个Silverlight幻灯片控件。这不仅仅是因为创建了第一个Silverlight幻灯片,而且还因为创建了第一个Silverlight用户控件!在开始之前,让向展示一些找到的很棒的Silverlight幻灯片:

  • Mike Swanson的博客
  • Andrew Arnott的博客
  • Koen Zwikstra的博客

实际上,在决定创建自己的幻灯片之前,尝试使用过这些幻灯片,因为它们非常漂亮!唯一的问题是它们必须直接嵌入到ASP.NET网页中,这意味着它们不能嵌入到SilverlightUserControl (*.xaml) 中。这很令人沮丧!特别是如果像一样,有一个完整的Silverlight 3网站,并且需要幻灯片能够在Silverlight UserControl中工作。

创建Silverlight网站

将要做的第一件事是创建一个Silverlight网站,可以用它来测试幻灯片。所以,启动Visual Studio 2008…

  1. 点击文件菜单 | 新建 | 项目…
  2. 当“新建项目”窗口打开时,执行以下操作:
    • 在项目类型树形视图中,展开Visual Basic节点,然后点击Silverlight节点。
    • 从模板列表视图中选择Silverlight应用程序。
    • 确保选择了“.NET Framework 3.5”。
    • 将项目命名为“SlideShowTest”。
    • 点击“确定”按钮,准备创建解决方案。
  3. 点击“确定”按钮后,将打开以下“新建Silverlight应用程序”窗口。只需点击“确定”按钮接受默认设置,然后创建解决方案。

下载源代码:

如果还没有这样做,请将“SlideShow类库”源代码下载到计算机。源代码在一个zip文件中,所以打开zip文件并将SlideShow项目提取到“SlideShowTest”解决方案文件夹中。

添加项目

下载并提取源代码到解决方案文件夹后,将其添加为项目的引用:

  1. 点击文件菜单 | 添加 | 现有项目…
  2. 当“添加现有项目”窗口打开时,浏览到“SlideShowTest”解决方案文件夹,然后到“SlideShow”文件夹,并选择“SlideShow.vbproj”。
  3. 如果成功添加了项目,那么解决方案资源管理器现在应该看起来像这样:

添加项目后,需要添加对它的引用:

  1. 在解决方案资源管理器中,右键单击“SlideShowTest”项目节点,然后从弹出菜单中选择“添加引用…”。
  2. 当“添加引用”窗口打开时,点击“项目”选项卡,然后选择“SlideShow”,并点击“确定”按钮。

添加图片

接下来,右键单击SlideShow项目中的“images”文件夹,并选择添加 | 现有项…,然后添加想要在幻灯片中查看的所有图片。

顺便说一句,如果不想添加图片,也没关系。如果有网络上图片的URL,并希望在幻灯片中查看它们,那么可以使用方法中的URL而不是本地图片。

已经添加了一些图片,可以看到:

添加图片后,右键单击SlideShowControl并选择查看代码。在AddImages()方法中,按照以下方式添加图片的URL:

Private Sub AddImages() '在这里添加要显示的图片。 ImageList.Add("images/Blue hills.jpg") ImageList.Add("images/Sunset.jpg") ImageList.Add("images/Water lilies.jpg") ImageList.Add("images/Winter.jpg") '也可以添加网络上的图片URL ImageList.Add("http://tiny.cc/NX6Kv") End Sub

添加ContentGrid:

一旦有了图片,准备在SlideShowTest项目的MainPage.xaml用户控件中添加一个网格来托管Slideshow。所以,双击MainPage.xaml用户控件以打开设计视图。然后,从工具箱中拖动一个Grid到XAML设计器,并将其命名为ContentGrid,如下所示:

<Grid x:Name="LayoutRoot"> <Grid x:Name="ContentGrid"> </Grid> </Grid>

保存并构建项目。

连接它

添加ContentGrid后,准备连接SlideShowControl。所以,在XAML设计器上右键单击,然后选择“查看代码”以打开代码窗口。

然后,在New()构造函数方法中,创建一个新的SlideShowControl实例,并将其添加到ContentGrid.Children集合中。

Partial Public Class MainPage Inherits UserControl Public Sub New() InitializeComponent() Dim ssc As New SlideShow.SlideShowControl() Me.ContentGrid.Children.Add(ssc) End Sub End Class

运行项目

就是这样!保存项目,然后运行它(F5),并查看幻灯片…

真的希望能像一样发现这个幻灯片很有用。代码很容易修改,所以如果想,可以进去调整它。

沪ICP备2024098111号-1
上海秋旦网络科技中心:上海市奉贤区金大公路8218号1幢 联系电话:17898875485