如何在WebPart中使用Treeview控件
How to using Treeview in a WebPart?
先来一段测试代码
protected
override
void
CreateChildControls()

{
try

{

Microsoft.Web.UI.WebControls.TreeView myTreeview = new Microsoft.Web.UI.WebControls.TreeView();
Microsoft.Web.UI.WebControls.TreeNode myNode = new Microsoft.Web.UI.WebControls.TreeNode();
myNode.Text ="try it";
Microsoft.Web.UI.WebControls.TreeNode myNode2 = new Microsoft.Web.UI.WebControls.TreeNode();
myNode2.Text ="OK!";
myNode.Nodes.Add(myNode2);


myTreeview.Nodes.Add(myNode);

this.Controls.Add(myTreeview);
}
catch

{

throw;
//this.text = ex.Message;
}


}
编译,将相关dllcopy到服务器wwwroot/bin下面。
加载webpart,结果出错。
想来还有treeview的客户端支持目录没有拷过去,
在wwwroot下面copy过去
webctrl_client
〔这些都是下载了微软ie webcontrols后安装生成的。〕
对了wss对虚拟目录具有控制权,要排除这个目录
接着再try
发现一个错误:
FileIOPermission failed...................
晕,又是权限。
打开web.config
找到
<
trust
level
="WSS_Minimal"
originUrl
=""
/>
改成
<trust level="Full" originUrl="" />
Let's Go!
运行成功!
其实,最好不要设置trust level 为full,
我们可以修改WSS_Minimal的配置, 添加如下代码
<
SecurityClass
Name
="FileIOPermission"
Description
="System.Security.Permissions.FileIOPermission, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
/>
<
IPermission
class
="FileIOPermission"
version
="1"
Unrestricted
="true"
/>
收工。
先来一段测试代码




































编译,将相关dllcopy到服务器wwwroot/bin下面。
加载webpart,结果出错。
想来还有treeview的客户端支持目录没有拷过去,
在wwwroot下面copy过去
webctrl_client
〔这些都是下载了微软ie webcontrols后安装生成的。〕
对了wss对虚拟目录具有控制权,要排除这个目录
wss管理器中(开始菜单->管理工具-》sharepoint centrl administration)中
config virtual server
->选择wss虚拟服务器
-》define managed paths
将webctrl_client 排除
注意前提是你已经将webctrl_client 拷贝到wwwroot/目录下面,同时设置成为虚拟目录了。
接着再try
发现一个错误:
FileIOPermission failed...................
晕,又是权限。
打开web.config
找到


改成

Let's Go!
运行成功!

其实,最好不要设置trust level 为full,
我们可以修改WSS_Minimal的配置, 添加如下代码


收工。