c# window编程的问题

来源:百度知道 编辑:UC知道 时间:2024/06/22 08:11:29
form1 中
fm.FileName=openFileDialog.FileName;
form2 中
public string FileName
{
get { return _filename; }
set { _filename = value; }
}
这个函数是什么意思

public string FileName
{
get { return _filename; }
set { _filename = value; }
}
是属性,在这段代码之前应该还有一句:

private string _filename;

对吧?

get { return _filename; }是用来返回 _filename的值的;

set { _filename = value; }是用来设定 _filename的值的;

为什么要有属性呢?比如有时候这个变量的值只能在该类中设定,但是又让它可以在别的类中可以访问,这时就可以只写get{}块,那么它就是只读属性,别的类只可访问,不能设定,设定它的值只能在所属的类中进行。

这form1中的那个FileName变量没有关系。那个变量的值是打开文件的名称。

明白吗?

public string FileName
{
get { return _filename; }
set { _filename = value; }
}
是属性访问器
不是函数,不过本质上还是函数
通过属性访问器可以约束属性的访问条件
如果只想让用户读取字段,就只实现get,若只想让用户写字段就只实现set,同时你还可以在set和get中对用户传递来的值进行一些验证工作,以确保你的字段将含有正确的值。
private int a;
public int Index
{
get
{
return a;
}
set