WSS3SDK之如何定制一个委托控件

步骤

通过拷贝默认的 \TEMPLATE\FEATURES\ContentLightup文件夹,在 Local_Drive:/Program Files/Common Files/Microsoft Shared/web server extensions/12/TEMPLATE/FEATURES 下创建一个名为 NewSearchBox 的文件夹。

XML

<?xml version="1.0" encoding="utf-8" ?>
<Feature Id="GUID"
Title="New Search Image"
Description="Points at which third partIEs light up in content pages"
Version="12.0.0.0"
Scope="WebApplication"
xmlns="http://schemas.microsoft.com/sharepoint/">
<ElementManifests>
<ElementManifest Location="controls\searcharea.xml" />
</ElementManifests>
</Feature>

在 NewSearchBox 文件夹中,修改已有的 Feature.xml 文件,通过运行 guidgen.exe (位于 Local_Drive:\Program Files\Microsoft Visual Studio 8\Common7\Tools)来生成新的GUID。

在Controls子文件中,修改searcharea.xml文件,它引用了一个可替换的.ascx文件,如下。

XML

<?xml version="1.0" encoding="utf-8" ?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
<Control
Id="SmallSearchInputBox"
Sequence="100"
ControlSrc="~/_controltemplates/mySearchArea.ascx">
<Property Name="SearchTextToolTip">Search this site</Property>
<Property Name="SearchImageToolTip">Go</Property>
</Control>
</Elements>

在 \TEMPLATE\CONTROLTEMPLATES下, 拷贝SearchArea.ascx 文件 , 并重命名拷贝得到的文件为mySearchArea.ascx。

在您拷贝得到的.ascx文件末尾,找到<img>标签,修改其src属性指向替换后的图片文件。为了测试,您可以使用安装在\TEMPLATE\IMAGES下的默认图片文件,下面的例子中,简单的用FOLDER.GIF替换了原来的gosearch.gif。

<INPUT Type=TEXT id='idSearchString' size=25 style='vertical-align: 2' name='SearchString' display='inline' maxlength=255 ACCESSKEY=S class='ms-searchbox' onKeyDown="return SearchKeyDown(event, <%=strEncodedUrl%>);" title=<%SPHttpUtility.AddQuote(SPHttpUtility.HTMLEncode(SearchTextToolTip),Response.Output);%>>
<IMG SRC="/_layouts/images/blank.gif" width=4 height=1 alt="">
<a target='_self' href='javascript:' onClick="javascript:SubmitSearchRedirect(<%=strEncodedUrl%>);javascript:return false;" title=<%SPHttpUtility.AddQuote(SPHttpUtility.HtmlEncode(SearchImageToolTip),Response.Output);%> ACCESSKEY=O ID=onetIDGoSearch>
<img border='0' src="/_layouts/images/FOLDER.GIF" style='vertical-align: 1'alt=<%SPHttpUtility.AddQuote(SPHttpUtility.HtmlEncode(SearchImageToolTip),Response.Output);%>></a>
&nbsp;
</span>
</nobr>

在命令行中,输入下列命令来安装并在特定子网站上激活该Feature。

a. stsadm -o installfeature -filename NewSearchBox\feature.xml

b. stsadm -o activatefeature -filename NewSearchBox\feature.xml -url http://Server/Site/Subsite

导航到该子网站中来查看对搜索框右侧图片的变更。

时间: 2024-07-28 18:53:58

WSS3SDK之如何定制一个委托控件的相关文章

Asp.Net可定制分页用户控件

今天研究了以下Asp.Net 可定制分页,用起来很爽,下面给大家介绍下. 借助 Asp.Net 提供的数据绑定控件,我们无需太多的代码,甚至不需要代码,只要在 VS2005 中拖拽几下控件,进行一些属性的设置,便可以实现在Asp时代需要做大量工作才能够实现的分页功能.但在实际的应用中,尤其是在Web站点程序中,我们经常需要更加丰富的用户界面,而类似DataList或者 GridView 这样的数据控件往往不能或者很难满足我们的要求.此时,我们常常求助于 Repeater 控件,这样我们依旧会面临

使用RFT的getProperty和invoke方法测试定制的Java控件

简介:定制的Java 控件(或者没有包含于标准 Java 库中的控件)正在挑战 GUI 自动化测试过程. 本文解释了如何通过 IBM Rational Functional Tester 所提供的两种方法使用这些控件类,用以创建自 动化的处理过程: getProperty 和 invoke. IBM Rational Functional Tester 提供了标准接口,便于操作标准 Java 控件.例如,在 Rational TextGuiTestObject 接口中,您可以很方便的使用getT

赶紧接着上一节:Silverlight+WCF 新手实例 象棋 主界面-实时聊天区(二十五) 这节我们实现上节没实现的纠结的进出房间的消息提示 我们清楚的知道,我们每个区都是一个用户控件,我们的在线用户进出时,得到聊天区域显示信息,这就涉及到用户控件之间的消息传递了。 在线用户区说:反正我是

赶紧接着上一节:Silverlight+WCF 新手实例 象棋 主界面-实时聊天区(二十五)  这节我们实现上节没实现的纠结的进出房间的消息提示 我们清楚的知道,我们每个区都是一个用户控件,我们的在线用户进出时,得到聊天区域显示信息,这就涉及到用户控件之间的消息传递了. 在线用户区说:反正我是没权直接去实时聊天区写东西,没办法,找中介委托设置一下了. 那谁是中介呢?委托谁呢?当然是衣食父母Index.xaml了,是它撑着整个家庭的. 好了,知道中介了,那我就签个委托书了: 回到OnlineUse

如何用c#来制作一个activeX控件或类似的东西

active|activex|控件 Q cat: 操作系统: 2000/xp 编程工具: vs.net 2003 /c# 问题: 我想制作一个activeX控件或类似的东西,有用户界面的,然后想在ie中使用,通过Vbscript与其进行数据交换,在以前好像可以使用vb就能做到,但是现在是vs.net 2003企业版,好像已经进化了,activeX成了老的技术,那vs.net如何解决这种类似的问题?如果要使用c#来编程的话,具体如何操作?还要有界面. A回答: 在C#中和ActiveX控件对应的是

在VB6中将XML传入一个TreeView控件

treeview|xml|控件 首先,建立一个新的带有窗体的Visual Basic 6工程,然后在窗体中添加一个TreeView控件,并添加一个引用到微软XML解析器. 接着,在Form_Load事件中添加如下的代码: Private Sub Form_Load() Dim objDOM As DOMDocument Set objDOM = New DOMDocument Call objDOM.loadXML( _ "") Call AddNode(objDOM.document

(论坛答疑点滴)如何在一个用户控件内操作另外一个用户控件的中的控件?

控件 比如一个论坛,上面一个top用户控件用来登陆,下面一个buttom的用户控件用来显示在线人数,要求登陆以后立即刷新online中的在线人数,就需要在一个用户控件中操作另外一个用户控件中的控件(这2个用户控件都包含在一个页面中) 看过 http://www.cnblogs.com/lovecherry/archive/2005/03/25/125515.html 和 http://www.cnblogs.com/lovecherry/archive/2005/04/11/135543.htm

生成jQuery simple treeview所需html的一个小控件

(正在装 VS2008,乘这个时间分享下一个小控件,没法整理demo,只能从项目中copy部 分代码) jQuery simple treeview 需要这样的一段html <ul class="filetree" id="treeFolder"> <li id="1"><span class="folder">Root</span> <ul> <li id=&

ASP.NET数据列表控件的分页总结(三)Asp.Net可定制分页用户控件

前一篇文章是采用存储过程来进行分页的,但是存在缺陷,没有代码重用,针对不同的表或者不同的视图都需要去编写存储过程,这样很麻烦,代码的重用性很差.本文将通过一个用户控件来实现数据分页的页面层以达到代码重用的目的. 分页是借助用户自定义控件来实现,在这里主要有以下两种方法来实现: (一).吴旗娃的AspNetPager组件(推荐使用) 首先,下载该dll文件. 在工具箱中,鼠标右键,"选择项",添加刚下载的dll文件. 然后,将会在工具箱中看到一个AspNetPager分页控件,拖到页面,

MFC写的一个视频显示控件类,无法复用显示两路视频

问题描述 MFC写的一个视频显示控件类,无法复用显示两路视频 刚学MFC,仿照实例写了一个视频显示的控件类,SubDlgView ,这个类UI界面只有一个picture control,接口就是一个IP地址,在CAMDlg.h 里面定义两个私有成员SubDlgView videoDisplay2; SubDlgView videoDisplay; 但是显示的时候总是只能再第二个显示的控件中显示视频?不知道为什么 解决方案 控件只支持一个视频显示吧 做两个进程呢 解决方案二: 一个简单的验证方法,