1

设想:

我有一个主页说MasterPage1。在那个母版页中,我有一个拆分器。在那个拆分器中有一个iframe。在该iframe中,我们加载另一个母版页,例如“ MasterPage2 ”。在 MasterPage2中,我们加载一个页面,在该页面上呈现不同的用户控件。

问题:

现在我想从加载在 MasterPage2 页面上的用户控件中找到MasterPage1上的控件。

请帮忙....

4

1 回答 1

0

问题到你的场景:

母版页和内容页呈现为单个对象,因此页面类能够引用在这两个对象(母版页和内容页)中找到的每个元素。当您渲染 iframe 时,客户端请求 iframe 内容,因此不存在参考因此无法在服务器上相互引用。

问题的解决方案

从上面你一定已经意识到所有的问题都是参考,所以你必须破解它。我能想到的最简单的方法是使用查询字符串。使用包含母版页标识符的查询字符串调用 iframe 页面,例如 mpage=mpage1,mpage=mpage2 等。现在在 masterpage2 中请求查询字符串以查找应用了哪个母版页并继续。这样你就不会放松了,因为 masterpage1 的内容不能改变,但 masterpage2 可以。

现在你需要做更多的工作来满足你的需要。仅当这是解决实际问题的唯一方法时才继续(我认为问题不是母版页,而是使您做这些奇怪事情的问题的解决方案)。为此,您将不得不使用 javascript 和处理程序来呈现并返回呈现的用户控件。但我认真地说不要在生产中使用此设置,并通过更改代码以使用 usercontrol 而不是 iframe 来寻找其他替代方案。

于 2013-10-22T05:04:40.550 回答