设为首页 收藏本站
查看: 741|回复: 0

[经验分享] 我的第一个SharePoint WebPart

[复制链接]

尚未签到

发表于 2015-9-25 11:41:45 | 显示全部楼层 |阅读模式
  本文是我的第一个WebPart开发过程,参考文档演练:为 SharePoint 创建 Web 部件。
  
  1. 启动Visual Studio 2010,新建一SharePoint项目,项目模板选择SharePoint > 2010 > 空白SharePoint项目。确定项目名称和存放位置后点击“确定”按钮。
DSC0000.png
  
  2. 指定用于调试的SharePoint网站和安全级别:注意:这里我们选择“部署为场解决方案”。点击“完成”按钮,项目创建成功。
DSC0001.png
  
  3. 为新建的SharePoint项目添加新项,项目模版选择SharePoint > 2010 > Web部件。确定部件名称后点击“添加”按钮。
DSC0002.png
  
  4. 打开新添加Web部件的代码文件(本文中是WebPart1.cs),用下面的代码替换。



using System;
using System.ComponentModel;
using System.Data;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using Microsoft.SharePoint;
using Microsoft.SharePoint.WebControls;
namespace HelloWebPart.WebPart1
{
[ToolboxItemAttribute(false)]
public class WebPart1 : WebPart
{
private DataGrid grid;
private static string verbText = "Show Managers Only";
private Label errorMessage = new Label();
protected string xmlFilePath;
[Personalizable(PersonalizationScope.Shared), WebBrowsable(true),
WebDisplayName("Path to Employee Data File"),
WebDescription("Location of the XML file that contains employee data")]
public string DataFilePath
{
get
{
return xmlFilePath;
}
set
{
xmlFilePath = value;
}
}
protected override void CreateChildControls()
{
// Define the grid control that displays employee data in the Web Part.
grid = new DataGrid();
grid.Width = Unit.Percentage(100);
grid.GridLines = GridLines.Horizontal;
grid.HeaderStyle.CssClass = "ms-vh2";
grid.CellPadding = 2;
grid.BorderWidth = Unit.Pixel(5);
grid.HeaderStyle.Font.Bold = true;
grid.HeaderStyle.HorizontalAlign = HorizontalAlign.Center;
// Populate the grid control with data in the employee data file.
try
{
DataSet dataset = new DataSet();
dataset.ReadXml(xmlFilePath, XmlReadMode.InferSchema);
grid.DataSource = dataset;
grid.DataBind();
}
catch (Exception x)
{
errorMessage.Text += x.Message;
}
// Add control to the controls collection of the Web Part.
            Controls.Add(grid);
Controls.Add(errorMessage);
base.CreateChildControls();
}
public override WebPartVerbCollection Verbs
{
get
{
WebPartVerb customVerb = new WebPartVerb("Manager_Filter_Verb",
new WebPartEventHandler(CustomVerbEventHandler));
customVerb.Text = verbText;
customVerb.Description = "Shows only employees that are managers";
WebPartVerb[] newVerbs = new WebPartVerb[] { customVerb };
return new WebPartVerbCollection(base.Verbs, newVerbs);
}
}
protected void CustomVerbEventHandler(object sender, WebPartEventArgs args)
{
int titleColumn = 2;
foreach (DataGridItem item in grid.Items)
{
if (item.Cells[titleColumn].Text != "Manager")
{
if (item.Visible == true)
{
item.Visible = false;
}
else
{
item.Visible = true;
}
}
}
if (verbText == "Show Managers Only")
{
verbText = "Show All Employees";
}
else
{
verbText = "Show Managers Only";
}
}
}
}
  
  
5. 将下面的XML内容保存到一个文件,这里以C:\Shared Folders\Tutorials\HelloWebPart\HelloWebPart\data.xml为例。



<?xml version="1.0" encoding="utf-8" ?>
<employees xmlns="http://schemas.microsoft.com/vsto/samples">
<employee>
<name>David Hamilton</name>
<hireDate>2001-05-11</hireDate>
<title>Sales Associate</title>
</employee>
<employee>
<name>Karina Leal</name>
<hireDate>1999-04-01</hireDate>
<title>Manager</title>
</employee>
<employee>
<name>Nancy Davolio</name>
<hireDate>1992-05-01</hireDate>
<title>Sales Associate</title>
</employee>
<employee>
<name>Steven Buchanan</name>
<hireDate>1955-03-04</hireDate>
<title>Manager</title>
</employee>
<employee>
<name>Suyama Michael</name>
<hireDate>1963-07-02</hireDate>
<title>Sales Associate</title>
</employee>
</employees>
  
  6. 在 Visual Studio 中按“F5”,启动调试SharePoint项目,SharePoint 网站将自动打开。单击“网站操作”,然后单击“更多选项”,出现选择创建类型窗口。我们选择“Web部件页”类型,然后点击右边的“创建”按钮。
DSC0003.png
  
  7. 在新建Web部件页页面,输入页面的名称,然后点击“创建”按钮。
DSC0004.png
  
  8. Web部件页内容编辑页面被打开,见下图。
DSC0005.png
  
  9. 点击页眉区域的“添加Web部件”链接,从“类别”列表中选择“Custom”,从“Web部件”列表中选择“WebPart1”(这里的名称就是我们在第3步添加的WebPart名称),然后点击“添加”按钮。
DSC0006.png
  
  10. WebPart1部件被成功的添加到了页面,下图红框。
DSC0007.png
  
  11. 点击WebPart1右上角的箭头,然后点击“编辑Web部件”。
DSC0008.png
  
  12. Web部件属性窗格在右侧被打开。展开“杂项”节点,输入先前创建的 XML 文件的路径(C:\Shared Folders\Tutorials\HelloWebPart\HelloWebPart\data.xml),然后点击“确定”按钮。
DSC0009.png
  
  13. XML文件的内容被成功的显示在了WebPart1部件里。
DSC00010.png
  
  14. 点击WebPart1右上角的箭头,然后再点击“Show Manager Only”或“Show All Employees”,还可以实现显示数据范围的切换。
DSC00011.png

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-118641-1-1.html 上篇帖子: SharePoint 2007 计算列公式错误解决一例: The formula contains a syntax error or is not suppo 下篇帖子: Sharepoint学习笔记—ECMAScript对象模型系列-- 11、 Enable/Disable Ribbon上的Button
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表