如何将onclick事件中的字符串传递给另一个类

时间:2016-11-03 13:59:37

标签: c# asp.net encapsulation

我是封装新手。我想将一个字符串从我的一个按钮的OnClick事件传递给另一个类中的私有方法。当我尝试从方法内部设置字符串时,它表示该变量未被识别我如何安全地将其传入?

我的OnClick事件:

public partial class ClassOne
  protected void lnkbtnKeySearch_Click(object sender, EventArgs e)
      {
           string myNewString = "Change the value of the string";
      }

我想把它传递给:

public partial class ClassTwo
  protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            LoadData();
        }
    }
    private void LoadData()
    {
        {
            string filterText = myNewString;
        }
    }

2 个答案:

答案 0 :(得分:2)

您可以尝试在会话变量中保存字符串的值:

protected void lnkbtnKeySearch_Click(object sender, EventArgs e)
{
     Session["myNewString"] = "Change the value of the string";
}

private void LoadData()
{
     string filterText = Session["myNewString"].ToString();
}

答案 1 :(得分:2)

一种方法是使MyNewString保持静态。

public partial class ClassOne
{
  public static string MyNewString{set;get;} 
  protected void lnkbtnKeySearch_Click(object sender, EventArgs e)
  {
       MyNewString= "Change the value of the string";
  }
}

然后

    public partial class ClassTwo
{
  protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            LoadData();
        }
    }
    private void LoadData()
    {
        {
            string filterText = ClassOne.MyNewString;
        }
    }
}