2010-06-08 50 views
0

我有一个Web部件(提供者),它在GridView中显示保险索赔。当用户点击一个这个值(案例编号)通过IWebPartField接口传递到另一个Web部件(消费者),该部件显示有关索赔的详细信息。到现在为止还挺好。我可以在提供商中选择不同的声明,并在消费者身上显示详细信息。在向消费者添加文本框的那一刻,消费者不再识别传递的案例号。我需要用户能够在文本框中输入值并单击按钮来更新声明信息。我可以调试并附加到进程,看起来它在回调函数等中获得了大小写,但是当它为CreateChildControls中的存储过程设置参数时,它为空。注释掉TextBox,它工作正常。Sharepoint连接的Web部件问题

关于发生了什么的任何线索? Sharepoint网络部件全新...任何帮助表示赞赏!

感谢, PhilJ

回答

0

可能与ShaprePoint呈现控件的方式的问题,所以该文本框可能不会实际上已经在你需要它的时候创建的。尝试在OnLoad()或Render()事件中添加对EnsureChildControls()的调用。

+0

EnsureChildControls在渲染事件中被首先调用。问题不在于呈现的文本框,问题是添加文本框似乎中断连接 - 当我尝试使用从Createchildcontrols代码中的提供者传递的值时,该值为null。如果我删除文本框,一切正常。 – user360943 2010-06-08 14:10:14

+0

好的。我认为文本框在你试图访问这个值的时候并没有被实例化,因此是null。尝试在RenderContents事件中设置参数,而不是CreateChildControls。 – MacComp 2010-06-08 14:47:54