条件:一个类中的定义一个属性,在另一个类中能给起赋值,在第三个类中要能读取之前赋的值
问题:如何定义, 如何赋值,如何读取值?
(回答正确另有高分相赠)
但这个赋的值 在另外一个类中就得不到了
定义:class GlobalVariable
{
private string dBname;
public string DBname
{
get { return dBname;}
set { dBname = value;}
}
}
赋值:class B
{
GlobalVariable globalVariable = new GlobalVariable();
globalVariable.DBname = textbox1.Text.ToString();
}
取值:class C
{
GlobalVariable globalVariable = new GlobalVariable();
textbox2.txt=globalVariable .DBname;
}
在class C中读不到globalVariable .DBname属性值 求教应该如何改???
我的程序写在补充里了 应该怎么改呢? 我试过了 如果只是在GlobalVariable类中 定义时加static 是没用的
追答你这样肯定是不行的,因为你2次访问class GlobalVariable 都是重新NEW的一个出来,所以,值都是初始值,你可以这样
定义:class GlobalVariable
{
private static string dBname;
}
赋值:class B
{
GlobalVariable.dBname = textbox1.Text.ToString();
}
取值:class C
{
textbox2.txt=GlobalVariable.dBname ;
}
public class GlobalVariable
{
private static string dBname;
public static string DBname
{
get { return dBname; }
set { dBname = value; }
}
}
这样吗?
可是这样 globalVariable点后面就没有dBname了
GlobalVariable.DBname
追问Great! 传进来了!
麻烦再问一下 如果变量是一个DataTable 呢也可以吗?
public class GlobalVariable
{
private static DataTable dt;
public static DataTable Dt
{
get { return dt; }
set { dt= value; }
}
}
要不要在private static DataTable dt后面加 =new DataTable();呢???
可以。最好加上,要不然第一次用的时候会出异常的。
本回答被提问者和网友采纳