08 2011 档案

摘要:在开发的WebPart中如果有PeopleEditor控件存在,部署后常常看到了界面就是如下:咦,那个输入的文本框呢!?用鼠标上去点一下,原来还在,只是边框没了:那就只有自己给它加个边框,首先用IE8及以上版本浏览器F12打开开发人员工具,然后选定那个人员选取器的文本框,看其样式是什么:很容易发现其样式为ms-inputuserfield,现在我们只需要重写一下这个样式,加个border就可以了,1 <style type="text/css">2 .ms-inputuserfield{font-size:8pt; font-family:Verdana,san 阅读全文
posted @ 2011-08-31 11:29 Statmoon 阅读(410) 评论(1) 推荐(0)
摘要:随着VS 2010的使用,在SharePoint 2010上的开发越来越容易,在开发事件的时候可以直接选择事件类型,事件源和哪些事件:这样就大大减轻了开发和部署上的难度,但是也造成了一定的弊端,很多的事件都是在自定义列表上的,因此很多人在开发的时候,直接选择事件源为“自定义列表”,然后选择几种要开发的事件就直接开发,完成后直接部署,根本就不去看看Elements.xml和其他的文件都是些什么,如果直接这样做而不在Elements.xml做小小改动的话,就会造成整个站点内所有的自定义列表全绑的有事件。因为Elements.xml中定义了事件的接收者为<Receivers ListTempl 阅读全文
posted @ 2011-08-30 17:58 Statmoon 阅读(947) 评论(0) 推荐(1)
摘要:之前我在自己的开发机上开发了一个沙盒解决方案,现在要将其部署到服务器上,怎么部署呢!?方法有两个:第一个就是直接在网站设置里面上传,选择“网站操作”—“网站设置”—“库”—“解决方案”,点击“上载解决方案”,然后将自己开发沙盒解决方案的WSP文件上传上去,然后激活。第二个方法就是在PowerShell中操作,分别采用Add-SPUserSolution命令和Install-SPUserSolution命令来添加和激活解决方案,这两条命令的语法分别为:Add-SPUserSolution -LiteralPath c:\contoso_solution.wsp -Site http://site 阅读全文
posted @ 2011-08-30 17:37 Statmoon 阅读(747) 评论(0) 推荐(0)
摘要:下面的样式是在国外找的一点资料。这是2007的样式详细解析:CSS Reference Chart for SharePoint 2007 (Microsoft Office SharePoint Server 2007 and Windows SharePoint Services v3)这是2010的样式详细解析:SharePoint 2010 CSS Reference Chart 阅读全文
posted @ 2011-08-17 14:27 Statmoon 阅读(280) 评论(0) 推荐(0)
摘要:有一个列表,之前对其进行过“自定义表单”处理,后来又对其写了一个EventHandler,列表可以正常工作,但是因为上面有一列是默认值,客户不想其在新建的时候也看到那一列,希望隐藏掉,这个问题当然很简单,大家都知道只需要再在列表上点击Ribbon中的“自定义表单”,然后在表单中将那一行删除后再发布回去,但是现在问题出现了,如下图:看到这么不清不楚的错误提示,实在不清楚发生了什么问题,还是看看Windows日志吧,一般错误都会在那边显示有,打开“服务器管理器”,选择“Windows日志”中的“应用程序”,果然有错误:原来是EventHandler在做怪,现在就到网站集功能中先将其停用,然后发布I 阅读全文
posted @ 2011-08-17 10:44 Statmoon 阅读(1237) 评论(0) 推荐(0)
摘要:这篇文章接着讲述其他几种禁用列表编辑的方法,首先还是将前面的步骤都复制过来。这里以2007为例,在2010中可以也可以使用此方法,首先我在网站集上建立一个列表TestList,它有三列,分别为“标题”,“TestField”和“ReadOnlyField”,如下:现在我需要禁止任何人编辑“TestField”列,怎么做呢?首先我用SPD 2007打开TestList列表:然后找到EditForm.aspx,将其在IE中打开,然后右键选择“查看源文件”,就会弹出一个记事本文本文件,如果要确定自己打开的是不是EditForm.aspx的源文件,就在文本中搜索一下,看看能不能找到如下一段:1 < 阅读全文
posted @ 2011-08-15 23:15 Statmoon 阅读(498) 评论(0) 推荐(0)
摘要:在有的时候,会有这样的需求,就是某个列表不允许任何人编辑,大家第一时间肯定都会想到用权限来控制,但是这样的话总归是开了后门,只要有人有权限就可以去编辑,在这里,我通过前端的控制来禁用编辑。这里以2007为例,在2010中可以也可以使用此方法,首先我在网站集上建立一个列表TestList,它有三列,分别为“标题”,“TestField”和“ReadOnlyField”,如下:现在我需要禁止任何人编辑“TestField”列,怎么做呢?首先我用SPD 2007打开TestList列表:然后找到EditForm.aspx,将其在IE中打开,然后右键选择“查看源文件”,就会弹出一个记事本文本文件,如果 阅读全文
posted @ 2011-08-15 22:43 Statmoon 阅读(1073) 评论(0) 推荐(0)
摘要:在我的网站集中有一个“我的任务”列表,现在需要将其加载到一个普通的ASPX页面中:首先用SPD打开“我的任务”列表,然后在视图中选择要显示那个视图,右键选择“在高级模式下编辑文件”:然后选中<WebPartPages:XsltListViewWebPart ......></WebPartPages:XsltListViewWebPart>这一段,选择Ribbon上面的“列表视图工具”—“Web部件”—“保存Web部件”—“到网站库”,然后在弹出的对话框上点击确定按钮:然后在SPD中打开网站页面,选择新建一个ASPX页:然后在高级模式下打开此页,选择“插入”—“Web部 阅读全文
posted @ 2011-08-11 18:17 Statmoon 阅读(477) 评论(0) 推荐(0)
摘要:我们在SharePoint开发测试过程中,用系统帐户之外的帐户常常会出现“拒绝访问”这样的错误,遇到此错误就说明当前用户的权限不够,解决办法就是对代码中的方法进行权限提升,在using (SPSite mySite = SPContext.Current.Site){ //Do Something }的外围加上权限提升的代码,具体如下: 1 SPSecurity.RunWithElevatedPrivileges(delegate 2 { 3 using (SPSite mySite = SPContext.Current.Site) 4 { 5 using (SPWeb myWeb = my 阅读全文
posted @ 2011-08-10 17:47 Statmoon 阅读(979) 评论(0) 推荐(0)
摘要:今天做了一个用户管理的WebPart,系统帐户测试OK,发现普通的用户访问那个页面时提示“拒绝访问”,于是将其中的一部分代码拎出来做测试,建了一个WebPartTest项目,向里面添加了两个控件,一个Button,一个ListBox,Button用来触发,ListBox用来显示值,页面主要代码如下:1 <asp:UpdatePanel ID="UpdatePanel" runat="server">2 <ContentTemplate>3 <asp:Button ID="btnTest" Text=&qu 阅读全文
posted @ 2011-08-10 17:38 Statmoon 阅读(1224) 评论(0) 推荐(0)
摘要:我们在做项目的时候经常会碰到一种需求,当做某一件事情的时候,需要多一步确认,即:在点击某一按钮后,需要弹出一个确认框,根据用户的确认情况再去做那件事。这时,我们就需要一个对话框来完成这个需求,这个对话框的实现方式有多种,在这里介绍一种不常用的方式,直接在后台用C#实现。首先需要添加System.Windows.Forms.dll的引用,然后在代码开头将其引用,如:using WF = System.Windows.Forms;(因为有很多控件是来自于System.Web.UI.WebControls命名空间的,这样为了便于区分)然后最主要的代码如下: 1 WF.DialogResult res 阅读全文
posted @ 2011-08-08 15:48 Statmoon 阅读(3009) 评论(0) 推荐(0)
摘要:当我们在sharepoint代码开发的时候,页面执行时或调试代码出现如下的错误信息:此网页的安全性验证无效并且可能损坏。请单击 Web 浏览器中的“后退”,刷新网页,再重试操作。解决办法:在代码SPWeb myWeb = myList.OpenWeb();下面添加一条代码:myWeb.AllowUnsafeUpdates = true;记得最后在myList.Update()或者是myListItem.Update()后添加下面的代码:myWeb.AllowUnsafeUpdates = false; 阅读全文
posted @ 2011-08-06 18:46 Statmoon 阅读(345) 评论(0) 推荐(0)
摘要:在做SharePoint的WebPart开发时,点击了WebPart中的一个按钮,但是发现没有做任何事情,后来单步调试,遇到了如下问题:一看这个问题就知道是不应该该释放SPSite对象时,给释放了,更准确的说是自己使用using (SPSite mySite = SPContext.Current.Site)的位置不当,解决办法有两种:第一,调整自己的程序,不要提前将SPSite对象给释放了,需要自己仔细检查;第二,去掉using,直接使用SPSite mySite = SPContext.Current.Site。 阅读全文
posted @ 2011-08-03 12:12 Statmoon 阅读(584) 评论(0) 推荐(0)