SilverlightCMS开发之3经典三页面CMS浮现
随笔思路:
- CMS粗略介绍
- CMS具体说明
- 一个ListBox的效果实例
- 一些RIA Service 实例
- 那个SL CMS 的效果。
- 下一步
1CMS粗略介绍
@1本来昨晚就弄好了的。今天又改了一天,加入了我去年写的一个CMS做后台管理和与数据库交互。
这一下整个东西在功能上就略显完整了。
那个CMS是基于ASP.NET 的Web Form 和ACCESS 数据库的环保型经典三层网站。(感谢LTP)
特别应对小门户和个人展示型的。跟我现在这个一样麻雀型的。
@2已经开源在 http://aqqcms.codeplex.com 需要的去下载各更新版本。。。
updata:这里也可以:http://download.csdn.net/source/2841741
或者在线查看其源码。
@3平心而论:这只是一个把一些知识集成的小应用,没有太大的技术含量和思想。
更多的是给初学者一个走通一个CMS的流程的一个源码级别的帮助。
2具体介绍
下面来看一下解决方案:
@1其中数据交互技术有2种
#1 RIA SERVICE
数据库SQL2005 =>AEF=>RIASERVICE 交互。
#2 DATA SERVICE
ACCESS =>ADO.NET =>BLL层=》DATA SERVICE
@2
RIAServiceLib 这个解决方案 是使用了 其分离类库的技术。
RIAServiceLib 类库的代码在两个项目中都存在。
这样使其结构更清晰明了。也增加了可移植性。
具体做法见文档。。。。。
(我发现自己好懒。。。
PS:最近园子里Silverlight版块多了好多截图文。。我深感惭愧,但也觉得这些不太难就不
自我装傻了。。。已开源)
@3他的技术含量
#1 首页导航框架。
##1 使用 URIMAP集 让URL 友好。
##2 导航跳转示例
#2列表页 ListBox 自定义呈现
##1几种用XAML做效果的东东
##2分页排序等。
#3内容页
使用控件呈现 HTML。参考感谢:在Silverlight中嵌入HTML、Flash和PDF文件。
#4交互技术
3一个ListBox的效果实例
右边那种排法还不错,我把整个XAML贴出来。
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
Style="{StaticResource PageStyle}"
xmlns:sdk="http://schemas.microsoft.com/winfx/2006/xaml/presentation/sdk"
xmlns:toolkit="http://schemas.microsoft.com/winfx/2006/xaml/presentation/toolkit"
xmlns:navigation="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Navigation"
d:DesignWidth="640"
d:DesignHeight="480"
Title="Channel Page">
<Grid x:Name="LayoutRoot">
<ScrollViewer x:Name="PageScrollViewer"
Style="{StaticResource PageScrollViewerStyle}">
<Grid x:Name="ContentStackPanel">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="498*" />
<ColumnDefinition Width="115*" />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="429*" />
<RowDefinition Height="13*" />
<RowDefinition Height="0*" />
</Grid.RowDefinitions>
<!-- 图片列表 -->
<ListBox Height="270"
HorizontalAlignment="Left"
Margin="88,69,0,0"
Name="listBox1"
VerticalAlignment="Top"
ItemsSource="{Binding}"
Width="252"
Grid.Column="1">
<ListBox.Style>
<Style TargetType="ListBox">
<Setter Property="ScrollViewer.HorizontalScrollBarVisibility"
Value="Disabled" />
</Style>
</ListBox.Style>
<ListBox.ItemsPanel>
<ItemsPanelTemplate>
<toolkit:WrapPanel HorizontalAlignment="Left"
VerticalAlignment="Top"></toolkit:WrapPanel>
</ItemsPanelTemplate>
</ListBox.ItemsPanel>
<ListBox.ItemTemplate>
<DataTemplate>
<Grid x:Name="LBIT"
Width="50">
<Image Grid.Row="1"
HorizontalAlignment="Left"
Name="image1"
Stretch="Fill"
VerticalAlignment="Top"
Source="{Binding Path=_id, Converter={StaticResource NumToImg}}" />
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
<!-- 分页控件 -->
<sdk:DataPager Height="26"
HorizontalAlignment="Left"
Margin="298,0,0,0"
Name="dataPager1"
PageSize="10"
VerticalAlignment="Top"
Width="200"
Grid.Row="1" />
<!--文章列表-->
<ListBox Height="550"
HorizontalAlignment="Left"
Margin="7,9,0,0"
Name="listBox2"
VerticalAlignment="Top"
Width="491">
<ListBox.Style>
<Style TargetType="ListBox">
<Setter Property="BorderThickness"
Value="0" />
</Style>
</ListBox.Style>
<ListBox.ItemTemplate>
<DataTemplate>
<Grid x:Name="LBIT"
Height="80"
Width="400">
<Grid.RowDefinitions>
<RowDefinition Height="46*" />
<RowDefinition Height="104*" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="0*" />
<ColumnDefinition Width="0*" />
<ColumnDefinition Width="104*" />
<ColumnDefinition Width="339*" />
</Grid.ColumnDefinitions>
<Image Grid.Column="2"
Height="61"
HorizontalAlignment="Left"
Margin="12,12,0,0"
Name="image1"
Stretch="None"
VerticalAlignment="Top"
Width="59"
Source="{Binding Path=_id, Converter={StaticResource NumToImg}}"
Grid.RowSpan="2" />
<HyperlinkButton Grid.Column="3"
Height="26"
HorizontalAlignment="Left"
Margin="33,6,0,0"
Name="textBlock1"
Content="{Binding Path=_title}"
VerticalAlignment="Top"
Width="178"
Tag="{Binding Path=_id}"
Click="Link2Article" />
<TextBlock Grid.Column="3"
Grid.Row="1"
Height="40"
HorizontalAlignment="Left"
Margin="16,8,0,0"
Name="textBlock2"
Text="Content"
VerticalAlignment="Top"
Width="237" />
<TextBlock Grid.Column="3"
Grid.Row="1"
Height="23"
HorizontalAlignment="Left"
Margin="143,54,0,0"
Name="textBlock3"
Text="{Binding Path=_adddate, StringFormat=\{0:d\}}"
VerticalAlignment="Top"
Width="148" />
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</Grid>
</ScrollViewer>
</Grid>
</navigation:Page>
=============================================
4 一些RIA Service 效果实例
见源码。
=============================================
5 Silverlight CMS 的样子
@1 导航的首页。
@2列表页
@3内容显示页
=============================================
6下一步?
如果有时间的话把粗糙的地方做好去,增加一些必备功能。美工(...纠结...)
有兴趣的可以一起。
SilverlightCMS开发之3经典三页面CMS浮现相关推荐
- ios safari 模拟器_iOS开发之Safari调试WebView页面
在iOS开发过程中,难免会加入html5页面来实现文章详情等等类似功能. 我们都知道火狐等PC浏览器有类似firebug,审查元素等工具来调试网页样式与脚本,查看请求参数与请求头等等. 在iOS开发中 ...
- Android开发之Dialog的三种列表显示(解读谷歌官方API)
根据谷歌的官方文档呢,我们可以有三种列表显示的关于ALertDialog api的可用:.(1)传统的单一选择列表(2)一个持久的单一选择列表(单选按钮) (3)一个持久的多项选择列表(复选框) .创 ...
- Android开发之activity跳转页面失败的问题
今天做地址管理,跳转新建地址页面发现一个问题,这么也跳转不到下一个页面代码如下: /*** 跳转创建地址页面*/private void createAddress() {startActivityF ...
- vue在html中写style,vue开发之style(六)(CSS页面布局之样式、背景、文字)
最近在学vue开发,并且将学习笔记与大家一起分享,前面讲了vue环境的搭建: 基于vscode的Vue前端环境搭建问题及解决办法 还有vue的使用,重点就在webpack这个: vue开发之webpa ...
- Swift Web 开发之 Vapor - 模版 Leaf(三)
模版引擎,对现在的 Web 开发极为重要,几乎所有主流 Web 框架都会支持一种或多种模版引擎,模版引擎可以分离用户界面和业务逻辑,工作原理主要是一种翻译,后端对特定的标记.语法.变量等渲染后再输送给 ...
- 第三篇 - EOS DAWN-V3.0.0 智能合约开发之Hello World
不管是C.C++.Java还是任何其他语言,一般刚开始学习的时候,我们都会从HelloWorld开始,这篇文章主要讲解EOS DAWN-V3.0.0 智能合约开发之Hello World. 在看这篇文 ...
- 测试开发之Django实战示例 第十章 创建在线教育平台
第十章 创建在线教育平台 在上一章,我们为电商网站项目添加了国际化功能,还创建了优惠码和商品推荐系统.在本章,会建立一个新的项目:一个在线教育平台,并创内容管理系统CMS(Content Manage ...
- 安全开发之w9scan扫描器源码学习
安全开发之w9scan扫描器源码学习 工作流程 信息搜集 子域名扫描 w9scan中的子域名扫描实现 泛解析绕过 cms指纹识别 插件加载 插件格式 加载过程 基于爬虫的漏洞扫描 线程调度 w9sca ...
- 苹果开发之Cocoa编程(原书第4版)
<苹果开发之Cocoa编程(原书第4版)> 基本信息 原书名:Cocoa Programming for Mac OS X: Fourth Edition 作者: (美)希莱加斯(Hill ...
最新文章
- Linux的init进程(内核态到用户态的变化)
- 不错的jquery插件
- 用python计算准确率_Python中计算模型精度的几种方法,Pytorch,中求,准确率
- <深入剖析Tomcat>摘抄
- mysql递归自身连接_Mysql递归连接
- SoX-linux里操作音频的瑞士×××
- yv12转nv12,nv12转I420
- 第12章 决策树 学习笔记上
- “美国人工智能计划The American AI In”启动
- 如何使用计算机求和公式,excel求和公式怎么用
- 电脑计算机睡眠和休眠模式区别,电脑休眠和睡眠的区别?
- idea创建项目异常导致项目创建失败
- 关于JavaScript中万恶的this
- 9张图揭秘:优秀的数据分析项目,这样做!
- 创造一个计算机语言,世界上第一个文言文编程语言诞生,创造它的是一个大学生...
- mail,at,batch,sleep小练习
- 洽谈国内单机游戏下载站
- 【HISI系列】海思媒体处理平台架构分析
- 爬虫爬取快代理网站动态IP
- 2021年学vue还是react好