我需要访问另一个函数中的变量。要访问和访问的函数是同一个类,相同的项目,但不同的功能。此外,没有全局变量声明
protected void gdDisplay_SelectedIndexChanged(object sender, EventArgs e)
{
int dbCompany = Convert.ToInt32(gdDisplay.SelectedRow.Cells[2].Text);
}
void gvFunction_Update()
{
//place to access dbcompany variable//
}
答案 0 :(得分:1)
创建一个私有财产" DbCompany"在类中通过属性访问变量
private int DbCompany {get;set;}
protected void gdDisplay_SelectedIndexChanged(object sender, EventArgs e)
{
int dbCompany = Convert.ToInt32(gdDisplay.SelectedRow.Cells[2].Text);
//This is where the property gets its value
DbCompany = dbCompany;
}
void gvFunction_Update()
{
//place to access dbcompany variable//
//Get the value from DbCompany;
int dbcompany = DbCompany;
}
如果您将该属性设为" public",您甚至可以访问该课程以外的值和" protected"如果您希望能够通过子类访问它。
我相信使用属性是一种更好的方法。我希望这有帮助。
答案 1 :(得分:0)
您无法访问,因为dbCompany
是gdDisplay_SelectedIndexChanged
方法中的局部变量。您必须在类级别声明一个全局变量: -
public partial class Default : System.Web.UI.Page
{
int dbCompany = 0;
protected void Page_Load(object sender, EventArgs e)
{
//Page Load event
}
protected void gdDisplay_SelectedIndexChanged(object sender, EventArgs e)
{
dbCompany = Convert.ToInt32(gdDisplay.SelectedRow.Cells[2].Text);
}
void gvFunction_Update()
{
int x = dbCompany ;
}
}