SharePoint:修改FormServer.aspx页面实现自定义逻辑
有时候,我们需要在用户打开Infopath表单的时候进行一些判断。 例如,我现在遇到一个问题就是,某些用户登陆SharePoint的时候使用的是公用帐号,但是在填写表单时肯定要有所区分。那么如何在表单打开的时候进行干预呢?答案是重写OnPreInit事件。
注意:不能在OnLoad中做,已然来不及了。
<%@ Page
inherits="Microsoft.Office.InfoPath.Server.Controls.FormServerPage,Microsoft.Office.InfoPath.Server, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c"
EnableSessionState="true"
AutoEventWireup="false"
EnableViewState="false"
LinePragmas="false"
Language="C#"
ValidateRequest="true"
%>
<%@ Register Tagprefix="InfoPath" Namespace="Microsoft.Office.InfoPath.Server.Controls" Assembly="Microsoft.Office.InfoPath.Server, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
<script runat="server">
protected override void OnPreInit(EventArgs e){
Session["Test"]="chenxizhang";
Response.Redirect("http://server2003:8080/Login.aspx");
}
</script>
<html>
<head runat="server">
</head>
<body style="margin: 0px;overflow:auto;">
<form runat="server" id="HostingForm" method="post" enctype="multipart/form-data" style="width:100%;">
<InfoPath:XmlFormView id="FormControl" Style="width:100%;" runat="server"/>
</form>
</body>
</html>

浙公网安备 33010602011771号