C# 如何向Web部件添加iframe以呈现单独的HTML页面?

C# 如何向Web部件添加iframe以呈现单独的HTML页面?,c#,asp.net,html,sharepoint,C#,Asp.net,Html,Sharepoint,我有一个web部件,它根据用户定义的某些特定条件填充sharepoint列表中可能存在的全部页面的下拉列表 其想法是让用户指定他们的标准,然后从下拉列表中选择一个特定页面,然后将该HTML页面加载到下拉列表下方的iframe中,以便立即查看 不过,我很难理解如何解决这个问题。当我在VS中创建一个Web部件时,我选择了“Web部件”,它只给了我一个.cs文件 从CS文件中,我了解到我可以做以下事情: protected override void CreateChildControls()

我有一个web部件,它根据用户定义的某些特定条件填充sharepoint列表中可能存在的全部页面的下拉列表

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

不过,我很难理解如何解决这个问题。当我在VS中创建一个Web部件时,我选择了“Web部件”,它只给了我一个.cs文件

从CS文件中,我了解到我可以做以下事情:

protected override void CreateChildControls()
    {
        Controls.Clear();
        myTextBox = new TextBox();
        Controls.Add(myTextBox);
        ...
     }
等等。据我所知,这是在服务器上运行的,然后一个页面被提供给客户端,然后呈现。在我看来,“创建”一些HTML的唯一方法是使用类似HtmlTextWriter的东西,但我不确定这是否是正确的攻击角度

因此,我想我的问题是,我应该改用可视化Web部件吗?我该如何向Web部件添加iframe,然后更改其属性(src等),并让它“动态”呈现页面?

谢谢

this.Controls.Add(新的LiteralControl(“”);
     this.Controls.Add(new LiteralControl("<iframe src='externalpage.htm'></iframe> "));

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