关于DataFormWebPart中CreatedModifiedInfo信息的分开使用
生活随笔
收集整理的這篇文章主要介紹了
关于DataFormWebPart中CreatedModifiedInfo信息的分开使用
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
以下是問題的描述,我先從數據說起.
數據存儲在一個叫pages的自定義列表中,該列表除默認的欄外,另增加了一欄"Abstract",為多行文本,用于存儲文章摘要信息.當該列表中錄入數據后如圖:
這時,當我們點列表項如"page2"時,會進入該項的 DispForm.aspx頁面.如圖:
這個頁面不符合客戶對頁面整體風格和布局的要求.最終客戶要的這個顯示數據的頁面效果如下:
因此我們需要對這個頁面進行修改.在SharePoint Desinger中,我們做了如下操作:
1.選中原先的ListFormWebPart,并將其所在 WebPartZone的Visible="false",將其藏起來.
2.然后在上方增加一行,插入一個自定義列表表單(插入->SharePoint控件->自定義列表表單),如圖:
3.插入后,頁面變為:
4.我們可以修改這個DataFormWebPart,或著這個表格,使其符合界面展示的要求.
對于Title和Abstract部分,我們是可以靈活定制的.如圖:
但是,當做到創建者和創建時間時,我們發現在這里Created, Created By,Modified,Modified By四個內容是合在一個叫CreatedModifiedInfo的控件中的.無法單獨拿出一個來做展示.注意到當前數據源中也沒有這些字段來供我們拖放.如圖:
我們該如何做,才能讓創建時間或創建者按客戶預想的效果展示?
解決辦法要從這里尋找:
D:\Program Files\Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\CONTROLTEMPLATES\DefaultTemplates.ascx
打開該文件,查找關鍵詞“CreatedModifiedInfo”,找到如下的內容:
<SharePoint:RenderingTemplate?ID="CreatedModifiedInfo"?runat="server">
????<Template>
????????<table?cellpadding=0?cellspacing=0>
??????????<tr><td?nowrap?class="ms-descriptiontext"?ID=onetidinfoblock1>
????????????????<SharePoint:FormattedString?FormatText="<%$Resources:wss,form_createdby%>"?runat="server">
????????????????????<SharePoint:FormField?ControlMode="Display"?FieldName="Created"?DisableInputFieldLabel="true"?runat="server"/>
????????????????????<SharePoint:FormField?ControlMode="Display"?FieldName="Author"?DisableInputFieldLabel="true"?runat="server"/>
????????????????????<SharePoint:CreationType?runat="server"/>
????????????????</SharePoint:FormattedString>
????????????</td></tr>
????????????<tr><td?nowrap?class="ms-descriptiontext"?ID=onetidinfoblock2>
????????????????<SharePoint:FormattedString?FormatText="<%$Resources:wss,form_modifiedby%>"?runat="server">
????????????????????<SharePoint:FormField?ControlMode="Display"?FieldName="Modified"?DisableInputFieldLabel="true"?runat="server"/>
????????????????????<SharePoint:FormField?ControlMode="Display"?FieldName="Editor"?DisableInputFieldLabel="true"?runat="server"/>
????????????????</SharePoint:FormattedString>
????????????</td></tr>
????????</table>
????</Template>
</SharePoint:RenderingTemplate>
看到這里,我想大家已經知道該怎么辦了。
在SharePoint Desinger中,重新定義該控件的模板。
比如,像這樣:
<SharePoint:CreatedModifiedInfo?ControlMode="Display"?runat="server">
????????<CustomTemplate>
????????????<table?cellpadding="0"?cellspacing="0"?border="0">
????????????<tr>
????????????<td>創建時間: </td>
????????????<td><SharePoint:FieldValue?FieldName="Created"?runat="server"?ControlMode="Display"?DisableInputFieldLabel="true"/></td>
????????????</tr>
????????????</table>
????????</CustomTemplate>
????</SharePoint:CreatedModifiedInfo> 最終效果如下
FieldValue這個控件真是好用啊。其他幾個,都可以這么來顯示。只要修改FieldName即可。
轉載于:https://www.cnblogs.com/Sunmoonfire/archive/2007/05/22/755968.html
總結
以上是生活随笔為你收集整理的关于DataFormWebPart中CreatedModifiedInfo信息的分开使用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 网页弹出窗口代码【来源于网络】
- 下一篇: CSS样式表的规划与组织