Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/266.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/37.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# 在.net中的视图状态之间循环?_C#_Asp.net_.net_Viewstate - Fatal编程技术网

C# 在.net中的视图状态之间循环?

C# 在.net中的视图状态之间循环?,c#,asp.net,.net,viewstate,C#,Asp.net,.net,Viewstate,我现在有一个代码,显示一个字符串,显示另一个视图状态正在被激活。我将如何添加另一个按钮,该按钮将循环返回到前一个状态,而不仅仅是隐藏字符串(尽管实际上就是这样)。最终,我希望能够使用视图状态运行多种方法(包括文件上载和显示数据库中的数据/文档中的数据) 我的代码就是这样 <script runat="server"> protected void Page_Load(object sender, EventArgs e) { if(!IsPostBack

我现在有一个代码,显示一个字符串,显示另一个视图状态正在被激活。我将如何添加另一个按钮,该按钮将循环返回到前一个状态,而不仅仅是隐藏字符串(尽管实际上就是这样)。最终,我希望能够使用视图状态运行多种方法(包括文件上载和显示数据库中的数据/文档中的数据)

我的代码就是这样

<script runat="server"> 
   protected void Page_Load(object sender, EventArgs e)
   {
        if(!IsPostBack)
        {
            string viewStateDisplay = "ViewState 2 is now being displayed";
            if(ViewState["PageState"]==null)
            {
                ViewState["PageState"] = viewStateDisplay;
            }    
         }
   }    
   protected void btnClick_Click(object sender, EventArgs e)
   {
         lblString.Text = ViewState["PageState"].ToString();
   }    
</script>

<div>
    ViewState Data: <b><asp:Label ID="lblString" runat="server"/></b>
    <asp:Button ID="btnClick" runat="server" Text="Get ViewState Data"
         onclick="btnClick_Click"/>
</div>

受保护的无效页面加载(对象发送方、事件参数e)
{
如果(!IsPostBack)
{
字符串viewStateDisplay=“ViewState 2现在正在显示”;
if(ViewState[“PageState”]==null)
{
ViewState[“PageState”]=viewStateDisplay;
}    
}
}    
受保护的无效B单击(对象发送者,事件参数e)
{
lblString.Text=ViewState[“PageState”].ToString();
}    
视图状态数据:

添加了另一个按钮并编辑了另一个按钮,使其看起来像这样。这可以用来测试我的方法,我将把它放在里面,给viewstate编号,然后根据编号关闭它们,现在按钮给了我一种方法来测试它是否工作

 protected void btnClick_Click(object sender, EventArgs e)
   {
    lblString.Text = ViewState["PageState"].ToString();
    lblString.Visible = true;

   }

   private void Close(object sender, EventArgs e)
   {
       lblString.Visible = !lblString.Visible;
       lblString.Visible = false;
   }

ViewState Data: <b><asp:Label ID="lblString" runat="server"/></b>
<asp:Button ID="btnClick" runat="server" Text="Get ViewState Data" OnClick="btnClick_Click"/>
<asp:Button ID="Closeform" runat="server" Text ="Hide PageState" OnClick="Close" />
protectedvoid b单击(对象发送方,事件参数e)
{
lblString.Text=ViewState[“PageState”].ToString();
lblString.Visible=true;
}
私有无效关闭(对象发送方、事件参数)
{
lblString.Visible=!lblString.Visible;
lblString.Visible=false;
}
视图状态数据:

只是澄清一下,当你说“viewstate”时,你并不是在说ASP.NET viewstate本身。听起来像是在谈论屏幕翻转或更改可见div,或是使屏幕看起来不同的东西(如向导屏幕),但与ASP.NET viewstate本身无关。是这样吗?我想是这样,有人告诉我使用ViewState,并给了我一个它看起来像什么的示例。ASP.NET ViewState是另一回事吗?我所要做的就是用另一个部分替换页面的一个部分,同时隐藏其他部分。