C# 从一个传递变量(如数组)<;asp:ListItem>;单击<;后转到另一个(参见<;asp:DropDownList>;);asp:按钮>;

C# 从一个传递变量(如数组)<;asp:ListItem>;单击<;后转到另一个(参见<;asp:DropDownList>;);asp:按钮>;,c#,asp.net,dropdown,aspbutton,C#,Asp.net,Dropdown,Aspbutton,早上好 我一直想知道如何在点击后将变量从一个(参见asp:DropDownList)传递到另一个,因为自动刷新会清除数据。为了说明我的观点: 第页的aspx <asp:DropDownList ID="test" runat="server" style="font-size:14px;text-align:center;border-radius:0; CssClass="ddl">

早上好

我一直想知道如何在点击
后将变量从一个
(参见
asp:DropDownList
)传递到另一个
,因为
自动刷新
会清除数据。为了说明我的观点:

第页的aspx

<asp:DropDownList ID="test" runat="server" style="font-size:14px;text-align:center;border-radius:0; 
CssClass="ddl">                              
<asp:ListItem>&nbsp;&nbsp;&nbsp;&nbsp;checkfruit</asp:ListItem>
<asp:ListItem>;&nbsp;&nbsp;&nbsp;&nbsp;verify</asp:ListItem>
<asp:ListItem>bsp;&nbsp;testcheck</asp:ListItem>                           
 </asp:DropDownList>
<asp:Button OnClick="test_Click" return="false" ID="veg" Text="Submit" runat="server" style="margin- 
 left:30px; border-radius:0; width:90px;/>
目标包括在顺序单击这些选项后,将
p
的值从
verify
传递到
testcheck
,从而在
testcheck
中得到
c=9
。问题是,当一个人从
verify
切换到
testcheck
时,
p
被重新初始化为
0
,这是由于
test\u Click
固有的
自动刷新
,并且从
页面设置
return=“false”
。aspx
没有改善这一问题。理想情况下,我希望通过在
testcheck
中重新定义
d
来避免重复代码。因此,我们非常感谢您的反馈


最好,

要保留回发时在pte中设置的值,请将其保存到ViewState中

protected void test_Click(object sender, EventArgs e)
{
    string a = test.SelectedItem.Value;

    switch (a)
    {

        case "verify":
            double[] d = new double[3] { 8, 2, 1 };
            //d = [8, 2, 1];
            pte = d;
            ViewState["pte"] = pte; // Save values
            break;

        case "testcheck":
            double c;
            pte = ViewState["pte"] as double[]; // Read values
            c = pte[0] + 1;
            break;
    }
}

非常感谢
聪明的解决方法
,因为我一直在探索涉及
javascript
ajax
c
的其他方法。最好的
protected void test_Click(object sender, EventArgs e)
{
    string a = test.SelectedItem.Value;

    switch (a)
    {

        case "verify":
            double[] d = new double[3] { 8, 2, 1 };
            //d = [8, 2, 1];
            pte = d;
            ViewState["pte"] = pte; // Save values
            break;

        case "testcheck":
            double c;
            pte = ViewState["pte"] as double[]; // Read values
            c = pte[0] + 1;
            break;
    }
}