惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园 - 叶小钗
爱范儿
爱范儿
WordPress大学
WordPress大学
Last Week in AI
Last Week in AI
博客园 - 聂微东
雷峰网
雷峰网
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
博客园 - 三生石上(FineUI控件)
T
Tailwind CSS Blog
博客园 - Franky
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园_首页
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
博客园 - 司徒正美
月光博客
月光博客
大猫的无限游戏
大猫的无限游戏
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
The Cloudflare Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
人人都是产品经理
人人都是产品经理
宝玉的分享
宝玉的分享
罗磊的独立博客
Jina AI
Jina AI

博客园 - zz

关于c# 静态构造函数的说明 后绑定webservice, 下帖引用自他人 通过citrix client 打印label 标签 如何用正确的方法来写出质量好的软件的体会 [转帖]满分的项目管理 转载 -- Visual Basic.Net中的文件操作 一位买车高手的经验谈 绝对有收藏价值 [转贴 2007-03-27 11:16:10 ] 发表者: 不要复杂 转摘-ComponentArt WebUI3.0控件的使用方法 在德国买手表 转贴 - Dflying Chen @ joycode 微软公司昨天发布的三个与Office System 2007相关的软件和参考文档 我的电脑,我的文件夹都打不开了? 名言哪! sql 常用命令 how to show a dialog box that prompts you to either "Open it" or "Save it to disk"again? sps List中根据利用Today和birth字段,计算用户年龄 用户怎么无法登陆sps网站了? 再asp.net中实现sharepoint里面调用outlook address book的功能 我碰到的到现在为止,还没有找到比较好的解决方法的sps问题 download latest 20 SharePoint Portal Site theme
滚动显示sps站点中某个列表里面的内容的 webpart
zz · 2005-08-30 · via 博客园 - zz

利用marquee,滚动显示sps站点中的列表内容。
此webpart中有有四个参数:
Site URL:站点的url地址
ListName:列表的名字

using System;

using System.ComponentModel;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Xml.Serialization;
using Microsoft.SharePoint;
using Microsoft.SharePoint.Utilities;
using Microsoft.SharePoint.WebPartPages;
using Microsoft.SharePoint.Portal.Topology ;
using Microsoft.SharePoint.Portal;
using Microsoft.SharePoint.Portal.SiteData;
using Microsoft.SharePoint.WebControls;

using System.Collections;

namespace Sharepoint.Adainat.MarqueeListings
{
    
/// <summary>
    
/// Summary description for MarqueeGroupedListings.
    
/// </summary>

    [DefaultProperty("Text"),
        ToolboxData(
"<{0}:MarqueeGroupedListings runat=server></{0}:MarqueeGroupedListings>"),
        XmlRoot(Namespace
="MarqueeListings")]
    
public class MarqueeGroupedListings : Microsoft.SharePoint.WebPartPages.WebPart
    
{
        
private const string siteURL = "";
        
private string _URL = siteURL;

        [Browsable(
true),Category("Marquee Options"),
        DefaultValue(siteURL),
        WebPartStorage(Storage.Personal),
        FriendlyName(
"Site URL"),Description("Site URL")]
        
public string URL
        
{
            
get
            
{
                
return _URL;
            }


            
set
            
{
                _URL 
= value;
            }

        }




        
private const string listname="Events";
        
private string _list=listname;
        [Browsable(
true),Category("Marquee Options"),
        DefaultValue(listname),
        WebPartStorage(Storage.Personal),
        FriendlyName(
"List Name"),Description("List Name")]
        
public string list
        
{
            
get
            
{
                
return _list;
            }


            
set
            
{
                _list 
= value;
            }

        }



        
private const string fieldname="Title";
        
private string _displayfieldname=fieldname;
        [Browsable(
true),Category("Marquee Options"),
        DefaultValue(fieldname),
        WebPartStorage(Storage.Personal),
        FriendlyName(
"Display Field Name"),Description("Display Field Name")]
        
public string displayfieldname
        
{
            
get
            
{
                
return _displayfieldname;
            }


            
set
            
{
                _displayfieldname 
= value;
            }

        }


        
private const string linkname="";
        
private string _hyperlinkname=linkname;
        [Browsable(
true),Category("Marquee Options"),
        DefaultValue(linkname),
        WebPartStorage(Storage.Personal),
        FriendlyName(
"Hyper link address"),Description("Hyper link address")]
        
public string hyperlinkname
        
{
            
get
            
{
                
return _hyperlinkname;
            }


            
set
            
{
                _hyperlinkname 
= value;
            }

        }


        
private const string marqparm="scrolldelay=350";
        
private string _marqeeparam=marqparm;
        [Browsable(
true),Category("Marquee Options"),
        DefaultValue(marqparm),
        WebPartStorage(Storage.Personal),
        FriendlyName(
"Marqee Parameters"),Description("Marqee Parameters")]
        
public string marqeeparam
        
{
            
get
            
{
                
return _marqeeparam;
            }


            
set
            
{
                _marqeeparam 
= value;
            }

        }


        
public override ToolPart[] GetToolParts()
        
{
            ToolPart[] toolparts 
= new ToolPart[3];
            WebPartToolPart wptp 
= new WebPartToolPart();
            CustomPropertyToolPart custom 
= new CustomPropertyToolPart();
            toolparts[
1= wptp;
            toolparts[
0= custom;
            toolparts[
2= new Copyright();
            
return toolparts;
        }


        
protected override void RenderWebPart(HtmlTextWriter output)
        
{
            
try
            
{
                SPList listings
=GetListings(this.URL.ToString());
                 
if (listings!=null)
                
{
                    
if (listings.Items.Count>0)
                    
{
                        
string str="";
                        
int counter=0;
                        ArrayList textArrayList 
= new ArrayList();
                        ArrayList linkArrayList 
= new ArrayList();
                        
//this is order the last one entered appears in the first
                        int TotalNewNUm=0;

                        
foreach (SPListItem li in listings.Items)
                        
{
                            textArrayList.Add (li[
this.displayfieldname].ToString());
                            linkArrayList.Add (
this.hyperlinkname+li.ID.ToString());
                            TotalNewNUm
++;
                                                            
                        }
//foreach
                        int i ;
                        
for(i=TotalNewNUm-1 ;i>=0  ;i--)
                        
{
                            str
+= "<a href=" + linkArrayList[i] + " target=_blank > <span style='font-family:verdana ; font-size: 8pt ;  height:10px; margin-bottom:3px; '>" + textArrayList[i] + "</span> </a>" ;                              
                            counter
++;
                            
if (i !=0)
                            
{
                                str
+=   "     " ;
                            }

                        }

                    
//<marquee id="scroll" scrollamount=1 scrolldelay=90 direction=up width=180 height=150
                     output.Write( " <marquee "+this.marqeeparam.ToString()+" >" + str + "</marquee>" );
                                     
                    }

                    
else
                    
{
                    output.WriteLine (
" There is No listings in this site  " + this.URL.ToString() + " !");
                    }

                }

                
else
                
{
                    output.Write (
"Wrong site URL address, Go back to the webpart properties to correct the site URL (e.g http://ServerName:port/)");
                }


            }

                    
            
catch (Exception e)
            
{
                output.Write (   
"Error Message : " + e.Message   );
                
            }

        }

        
private SPList GetListings(string url)
        
{
            SPSite siteCollection;
            SPWeb site ;

            
try
            
{
                
if (url=="")
                
{
                    siteCollection 
= SPControl.GetContextSite(Context); 
                    site 
= SPControl.GetContextWeb(Context);         
                }

                
else
                
{
                    siteCollection 
= new SPSite(url);
                    site 
= siteCollection.OpenWeb();
                }

            
                SPList list
=site.Lists[this.list];            
                
return list;
                
            }

            
catch (Exception)
            
{
                 
return null;
            }

        }
  

    }

}


Display Field Name:显示的列表字段的名字
Hyper Link address:超链接的地址
下面是源代码,各位可以参考参考.