Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/288.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Can';无法获取多视图控件以更改视图_C#_Asp.net_C# 4.0_Multiview - Fatal编程技术网

C# Can';无法获取多视图控件以更改视图

C# Can';无法获取多视图控件以更改视图,c#,asp.net,c#-4.0,multiview,C#,Asp.net,C# 4.0,Multiview,我有一个多视图控件,它有两个视图。View1是默认视图,View2是新视图。当最终用户单击按钮时,我想将视图更改为View2。不管怎么说,我似乎都无法做到这一点 ASP.NET代码: <asp:MultiView ID="MVOrder" runat="server"> <asp:View ID="VOrderNow" runat="server"> <asp:UpdatePanel ID="UpdatePanel2" runat="serv

我有一个多视图控件,它有两个视图。View1是默认视图,View2是新视图。当最终用户单击按钮时,我想将视图更改为View2。不管怎么说,我似乎都无法做到这一点

ASP.NET代码:

<asp:MultiView ID="MVOrder" runat="server">
    <asp:View ID="VOrderNow" runat="server">
        <asp:UpdatePanel ID="UpdatePanel2" runat="server">
            <ContentTemplate>
                <table>
                    <tr>
                        <td>
                        <asp:Label ID="LblInfo" runat="server"></asp:Label>
                        </td>
                        <td>
                        &nbsp;</td>
                        <td>&nbsp;</td>
                    </tr>
                    <tr>
                        <td>
                        <asp:Label ID="LblDrink" runat="server"></asp:Label>
                        </td>
                        <td></td>
                        <td></td>
                    </tr>
                    <tr>
                        <td>
                        <asp:Label ID="LblItemInfo" runat="server"></asp:Label>
                        </td>
                        <td>
                        &nbsp;</td>
                        <td>&nbsp;</td>
                    </tr>
                </table>
                <br />
                <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" />
            </ContentTemplate>
        </asp:UpdatePanel>
    </asp:View>
    <asp:View runat="server" ID="VOrderComplete">

    <table class="auto-style1">
        <tr>
            <td>&nbsp;</td>
            <td>
            <asp:Label ID="LblOrderComplete" runat="server"></asp:Label>
            </td>
            <td>&nbsp;</td>
        </tr>
        <tr>
            <td>&nbsp;</td>
            <td>
            <asp:Label ID="LblOrderNumberAgain" runat="server"></asp:Label>
            </td>
            <td>&nbsp;</td>
        </tr>
        <tr>
            <td>&nbsp;</td>
            <td>
            <asp:Label ID="LblOrderTimeAgain" runat="server"></asp:Label>
            </td>
            <td>&nbsp;</td>
        </tr>
    </table>

    </asp:View>
<br/>
</asp:MultiView>
页面加载代码:

if (!IsPostBack)
{
    MVOrder.SetActiveView(VOrderNow);
}

有人能告诉我我做错了什么吗?

我想你可能有一些额外的代码,可能会使它无法正常工作。但根据您所展示的内容,这将发布并更新您的视图:

<asp:UpdatePanel ID="UpdatePanel2" runat="server">
    <ContentTemplate>
        <asp:MultiView ID="MVOrder" runat="server">
            <asp:View ID="VOrderNow" runat="server">
                <table>
                    <tr>
                        <td><asp:Label ID="LblInfo" runat="server" Text="asdfasdfasdf"></asp:Label></td>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                    </tr>
                    <tr>
                        <td><asp:Label ID="LblDrink" runat="server" Text="lmnoplmnop"></asp:Label></td>
                        <td></td>
                        <td></td>
                    </tr>
                    <tr>
                        <td><asp:Label ID="LblItemInfo" runat="server" Text="iteminfo"></asp:Label></td>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                    </tr>
                </table>
                <br />
                <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" />
            </asp:View>
            <asp:View runat="server" ID="VOrderComplete">
                <table class="auto-style1">
                    <tr>
                        <td>&nbsp;</td>
                        <td><asp:Label ID="LblOrderComplete" runat="server" Text="ordercomplete"></asp:Label></td>
                        <td>&nbsp;</td>
                    </tr>
                    <tr>
                        <td>&nbsp;</td>
                        <td><asp:Label ID="LblOrderNumberAgain" runat="server" Text="ordernumberagain"></asp:Label></td>
                        <td>&nbsp;</td>
                    </tr>
                    <tr>
                        <td>&nbsp;</td>
                        <td><asp:Label ID="LblOrderTimeAgain" runat="server" Text="ordertimeagain"></asp:Label></td>
                        <td>&nbsp;</td>
                    </tr>
                </table>
            </asp:View>
            <br />
        </asp:MultiView>
    </ContentTemplate>
</asp:UpdatePanel>




您有任何错误吗?@ethorn10没有,没有错误。看起来页面刷新了,但是视图没有改变。我很确定,按照你的结构,你将无法做你想做的事情。
UpdatePanel
正在执行一个异步调用,因此任何UI更新都将自动进行,而不是
视图
多视图
@ethorn10正常。那么,我怎样才能同时使用我的更新面板(因为我需要它来更新控件)和多视图呢?
<asp:UpdatePanel ID="UpdatePanel2" runat="server">
    <ContentTemplate>
        <asp:MultiView ID="MVOrder" runat="server">
            <asp:View ID="VOrderNow" runat="server">
                <table>
                    <tr>
                        <td><asp:Label ID="LblInfo" runat="server" Text="asdfasdfasdf"></asp:Label></td>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                    </tr>
                    <tr>
                        <td><asp:Label ID="LblDrink" runat="server" Text="lmnoplmnop"></asp:Label></td>
                        <td></td>
                        <td></td>
                    </tr>
                    <tr>
                        <td><asp:Label ID="LblItemInfo" runat="server" Text="iteminfo"></asp:Label></td>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                    </tr>
                </table>
                <br />
                <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" />
            </asp:View>
            <asp:View runat="server" ID="VOrderComplete">
                <table class="auto-style1">
                    <tr>
                        <td>&nbsp;</td>
                        <td><asp:Label ID="LblOrderComplete" runat="server" Text="ordercomplete"></asp:Label></td>
                        <td>&nbsp;</td>
                    </tr>
                    <tr>
                        <td>&nbsp;</td>
                        <td><asp:Label ID="LblOrderNumberAgain" runat="server" Text="ordernumberagain"></asp:Label></td>
                        <td>&nbsp;</td>
                    </tr>
                    <tr>
                        <td>&nbsp;</td>
                        <td><asp:Label ID="LblOrderTimeAgain" runat="server" Text="ordertimeagain"></asp:Label></td>
                        <td>&nbsp;</td>
                    </tr>
                </table>
            </asp:View>
            <br />
        </asp:MultiView>
    </ContentTemplate>
</asp:UpdatePanel>