【问题标题】:Sharepoint connected web parts questionSharepoint 连接的 Web 部件问题
【发布时间】:2011-02-28 23:20:15
【问题描述】:

我有一个在网格视图中显示保险索赔的 Web 部件(提供商)。当用户单击一个时,此值(案例编号)通过 IWebPartField 接口传递到另一个 Web 部件(消费者),该 Web 部件(消费者)显示有关索赔的详细信息。到目前为止,一切都很好。我可以在提供者中选择不同的声明,并且细节会很好地显示在消费者中。在我向消费者添加 TextBox 的那一刻,消费者不再识别传递的案例编号。我需要用户能够在文本框中输入一个值并单击一个按钮来更新该声明信息。我可以调试并附加到进程,看起来它在回调函数等中得到了案例,但是当它在 CreateChildControls 中为存储的过程设置参数时,它为空。注释掉TextBox,它工作正常。

关于发生了什么的任何线索?全新的 Sharepoint Web 部件...感谢任何帮助!

谢谢, 菲尔

【问题讨论】:

    标签: c# asp.net sharepoint web-parts


    【解决方案1】:

    可能是 ShaprePoint 呈现控件的方式存在问题,因此文本框可能在您需要时实际上并未创建。尝试在 OnLoad() 或 Render() 事件中添加对 EnsureChildControls() 的调用。

    【讨论】:

    • EnsureChildControls 在 Render 事件中被首先调用。问题不在于正在呈现的文本框,问题在于添加文本框似乎会中断连接 - 当我尝试在 Createchildcontrols 代码中使用从提供程序传递的值时,该值为空。如果我删除文本框,一切正常。
    • 好的。我认为在您尝试访问该值时尚未实例化文本框,因此为空。尝试在 RenderContents 事件中设置参数,而不是在 CreateChildControls 中。
    猜你喜欢
    • 2011-06-19
    • 2011-02-01
    • 2010-09-17
    • 1970-01-01
    • 2011-10-10
    • 1970-01-01
    • 1970-01-01
    • 2016-06-09
    • 2010-10-31
    相关资源
    最近更新 更多