1

我有一个 Web 部件,它根据用户定义的一些特定标准填充一个下拉列表,其中包含位于共享点列表中的可能页面。

这个想法是让用户指定他们的标准,然后从下拉列表中选择一个特定页面,然后将该 HTML 页面加载到下拉列表下方的 iframe 中以便立即查看。

我无法理解如何解决这个问题。当我在 VS 中创建 WebPart 时,我选择了“Web Part”,它只给了我一个 .cs 文件。

从 CS 文件中,我了解到我可以执行以下操作:

protected override void CreateChildControls()
    {
        Controls.Clear();
        myTextBox = new TextBox();
        Controls.Add(myTextBox);
        ...
     }

等等。据我了解,这在服务器上运行,然后将页面提供给客户端,然后呈现。在我看来,“创建”某些 HTML 的唯一方法是使用 HtmlTextWriter 之类的东西,但如果这是正确的攻击角度,我并不肯定。

所以我想我的问题是,我是否应该使用 Visual Web Part,以及如何将 iframe 添加到 WebPart,然后更改它的属性(src 等)并让它在“飞”?

谢谢。

4

2 回答 2

2
     this.Controls.Add(new LiteralControl("<iframe src='externalpage.htm'></iframe> "));
于 2012-09-18T17:18:57.873 回答
1

Visual webpart 是一个包含和编写用户控件的webpart。这允许您使用 html 标记。根据 html 的复杂性,您可能希望也可能不希望使用可视 Web 部件。如果您使用常规 Web 部件,那么 Gregor Primar 的答案对于 Web 部件的 CreateChildControls 方法是有意义的。我强烈建议您使用 javascript 选择下拉菜单,这样您就不必在更新 web 部件时回发整个页面。

于 2012-09-19T04:03:10.997 回答