1

例子:

<asp:MultiView
        id="MultiView1"
        ActiveViewIndex="1"
        Runat="server">
        <asp:View ID="View1" runat="server" >
            <iframe id="v1" runat="server" src='http://www.w3schools.com' style="border: None; height: 100%; width: 100%;"></iframe>
        </asp:View>        
        <asp:View ID="View2" runat="server">
            <iframe id="Iframe1" runat="server" src='http://www.w3schools.com/html/html5_intro.asp' style="border: None; height: 100%; width: 100%;"></iframe>
        </asp:View>        
        <asp:View ID="View3" runat="server">
            <br />This is the third view
            <br />This is the third view
            <br />This is the third view
            <br />This is the third view
        </asp:View>
        <asp:View ID="View4" runat="server">
            <br />This is the third view
            <br />This is the third view
            <br />This is the third view
            <br />This is the third view
        </asp:View>        
    </asp:MultiView>

关注点:

  1. 如何在运行时创建这种多视图结构?
  2. 有没有可以在多视图中使用的 iframe 替代方案?
  3. 我可以将一个多视图视图用于 2 个或更多菜单吗?
  4. 如何使用 javascript 或 jquery 引用和操作多视图?

请帮我解决一下这个。

谢谢!

4

1 回答 1

2

对此的答案类似于您的上一个问题:如何显示/隐藏菜单项以及如何在运行时创建它?. 您可能还想查看此 MSDN 文章以讨论有关以编程方式添加控件:http: //msdn.microsoft.com/en-us/library/kyt0fzt1 (v=vs.100).aspx

下面是如何MultiView使用View控件动态填充控件的示例。

protected void Page_Init(object sender, EventArgs e)
{
    // Create View.
    View myView = new View();

    // Create controls.
    Label myLabel = new Label();
    myLabel.Text = "<b>Test</b>";

    // Add controls to View.
    myView.Controls.Add(myLabel);


    //Add view to MultiView.
    MultiView1.Views.Add(myView);
    MultiView1.ActiveViewIndex = 0;
}

上述逻辑对于以编程方式将任何控件添加到页面是相同的。

您可以MultiView通过使用索引引用特定视图来使用服务器端代码以相同的方式操作控件:

Label myLabel = new Label();
myLabel.Text = "<b>Test</b>";

MultiViewDemo.Views[0].Controls(myLabel);

然后,您应该能够像往常一样使用 jQuery 操作这些视图中的任何 HTML 元素。

在 a 中使用多个Menu控件MultiView取决于您的要求。

关于iframe,我不确定您会在替代方案中寻找什么,但您应该能够iframe使用服务器端代码操作控件,因为您已将runat="server"属性添加到它们。

于 2013-06-05T03:59:17.047 回答