共享点自定义智能部件中的用户控件属性

Posted

技术标签:

【中文标题】共享点自定义智能部件中的用户控件属性【英文标题】:Sharepoint-customizing usercontrol property in smartpart 【发布时间】:2011-01-03 21:22:47 【问题描述】:

如果有人知道如何在智能部件中自定义属性。我已经创建了用户控件,并将其包装在一个智能部件中。我想从文档库上传我的 xml。

private string feedXML;
        [Browsable(true),
        Personalizable(true) ]


        public string FeedXML
        
            get
             return feedXML; 

            set
             feedXML = value; 
        

我正在使用这个 //

feedXML="\customxml.xml";
    XPathDocument doc = new XPathDocument(Server.MapPath(feedXML));

但这东西不起作用。当我单击修改共享点页面的共享 Web 部件时,未呈现。任何我哪里出错的线索。

【问题讨论】:

【参考方案1】:

您可能想要验证 server.mappath 语句的结果。它将类似于 C:\Inetpub... 因此,您的代码正在尝试从真正存在于 SharePoint 中的文件系统中检索文件,因为您已将其上传到文档库。

如果您需要该文件,则必须使用 SharePoint 对象模型检索它,请查看 GetFileAsString method。

我同意丹尼..

似乎 Smartpart 只会让它变得更加困难?它有什么优点?

我为 ascx 控件制作了自己的 webpart 容器.. 工作量很少,而且您需要的所有控件。信任设置也没有问题。

【讨论】:

【参考方案2】:

你确定这是正确的吗?

feedXML="\customxml.xml";

也许,你想要的是:

feedXML="\\customxml.xml"; //escape the back-slash.

feedXML="/customxml.xml"; // use the forward-slash.

无论如何,如果您只想将用户控件包装在 Web 部件中,则不需要 SmartPart。您可以非常轻松地自己编写自定义 Web 部件。

【讨论】:

感谢 Denni 回复我们正在使用 Smartpart bcoz,因为它易于与用户控件一起使用说但它仍然是一样的......当我点击修改 smartpart 的共享 webpart 时页面没有重新渲染......意味着你知道如何去做......我需要使用 SmartPart.Iusercontrol 吗...并定义属性...或者我可以在用户控件中执行与我在 webpart 中相同的方式,它将反映在我的智能部件中

以上是关于共享点自定义智能部件中的用户控件属性的主要内容,如果未能解决你的问题,请参考以下文章

自定义控件的高级自定义属性

在 thingsboard 上的自定义控件小部件仪表板上显示 thingsboard 设备属性最新值

如何从自定义用户控件 WPF、C# 中的枚举自定义属性中获取值?

.net WinForm用户控件开发:用户控件的基本属性设置

winform 自定义控件

用户控制 - 自定义属性