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

推荐订阅源

S
Secure Thoughts
S
Securelist
P
Proofpoint News Feed
D
DataBreaches.Net
Cisco Talos Blog
Cisco Talos Blog
C
CXSECURITY Database RSS Feed - CXSecurity.com
Project Zero
Project Zero
A
About on SuperTechFans
罗磊的独立博客
WordPress大学
WordPress大学
月光博客
月光博客
Latest news
Latest news
C
Cyber Attacks, Cyber Crime and Cyber Security
GbyAI
GbyAI
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
博客园 - 三生石上(FineUI控件)
F
Fortinet All Blogs
W
WeLiveSecurity
Attack and Defense Labs
Attack and Defense Labs
V
Visual Studio Blog
Blog — PlanetScale
Blog — PlanetScale
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
P
Privacy International News Feed
AI
AI
博客园 - 司徒正美
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
www.infosecurity-magazine.com
www.infosecurity-magazine.com
Stack Overflow Blog
Stack Overflow Blog
M
MIT News - Artificial intelligence
Help Net Security
Help Net Security
T
Tor Project blog
V
Vulnerabilities – Threatpost
C
Cisco Blogs
I
Intezer
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
MyScale Blog
MyScale Blog
雷峰网
雷峰网
MongoDB | Blog
MongoDB | Blog
Forbes - Security
Forbes - Security
V
V2EX
Apple Machine Learning Research
Apple Machine Learning Research
T
Threat Research - Cisco Blogs
B
Blog RSS Feed
博客园 - 叶小钗
N
News and Events Feed by Topic
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Simon Willison's Weblog
Simon Willison's Weblog
C
CERT Recently Published Vulnerability Notes
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
N
News and Events Feed by Topic

博客园 - 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:超链接的地址
下面是源代码,各位可以参考参考.