欢迎莅临 广东动易软件股份有限公司凯发k8天生赢家官网
| | | 售前:4008-300-618
在上一篇的sitefactory™ cms 2.0 预览中曾提到 widget ,今天我将接着为大家带来此方面的介绍。widget 在“我的工作台”的应用,将sitefactory™ cms 1.0版本中“固死”的模块“激活”起来。由原先动易自身开发转变为大家参与的平台式开发,这也是sitefactory™ 进一步融入开源精神的体现方式了。

下图为系统默认“我的工作台”中显示的widget,图中红框标注1、2、3、4、5、6、7的位置,显示的就是一个个独立的widget模块,可以通过拖拽、关闭和编辑排列他们的位置或者显示的内容。



widget(中文名:微巨)简单的说是一个功能应用的开放式平台,它的应用包括:桌面widget (yahoo! widget、鱼鱼桌面秀等)、个性化凯发k8天生赢家首页widget(igoogle)、博客widgets(抓虾rss、博客侧边栏等)。widget 的优点是“软件模块化”和“易扩展性”便于个性化界面;在sitefactory™ cms 2.0 中可以为“我的工作台”添加各种基于系统或者系统外的功能应用,如:待处理订单、欢迎界面、主题更换、订阅rss等。目前系统已经预设了11种widget模块,且后台的所有widget模块都可以在 controls\widgets 目录下找到,如图:



制作widget需要拥有一定的编程基础(不会?没关系,动易官方会定期推出一些实用的widget模块;同样,开放式的开发平台也将会涌现出一批非常好的widget模块,因此,并不需要着急 :)),排除了技术层面的东西,制作widget就非常简单了,只要建立一个目录,用户控件命名为:widget.ascx (不可自定义),后台就能自动读取控件的相关信息。

下面给大家介绍一下widget的制作演示:以制作“用于读取某网站rss 信息的标题和列表”widget模块为例。

首先,建立一个用户控件命名为“widget.ascx”(这个命名是固定的,不可以自定义):



前台代码如下:

<%@ control language="c#" autoeventwireup="true" codefile="myrss.ascx.cs" inherits="myrss" %>



后台代码如下:

using system;
using system.collections.generic;
using system.web;
using system.web.ui;
using system.web.ui.webcontrols;
using system.net;
using system.io;
using system.data;
using system.xml;

public partial class myrss : powereasy.sitefactory.web.ui.basewidget
{
    protected void page_load(object sender, eventargs e)
    {
        webclient client = new webclient();
        using (stream rss = client.openread(";))
        {
            streamreader rerss = new streamreader(rss, system.text.encoding.default);
            string rssstring = rerss.readtoend();
            xmldocument doc = new xmldocument();
            doc.loadxml(rssstring);
            xmlnodelist nodelist = doc.selectnodes("//channel/item");
            string content = string.empty;
            int i = 0;
            foreach (xmlnode node in nodelist)
            {
                if (i > 10)
                    break;
                content ="
";
                i ;
            }
            content.innerhtml = mycontent;
        }
    }
}


得到如下两个用户控件文件:



然后,新建立一个目录名为:myrss(名称可自定义),将上述两个文件放进此目录中



随后,把“myrss文件夹”目录放在controls\widgets 目录下,如下图:



最后,重新进入网站后台,进入到“我的工作台”就会发现系统已经自动检索到了刚才新添加的widget模块:



同样,会发现后台多了一个widget模板,再添加到左内容中,显示效果如下:



到此,一个widget模块就添加完成了,简单吧?但是值得注意的是:控件类一定要继承powereasy.sitefactory.web.ui.basewidget ,编写测试时可用 system.web.ui.usercontrol 代替。

总之,widget可以让用户更多自定义,更多个性化设置,让用户可以在不需要了解源代码的情况下编写个性插件,让我们拭目以待吧。
发布时间:2008-10-09 作者:bbsh 来源:本站原创
网站地图