日期:2014-05-19  浏览次数:20742 次

c#基础问题,请教!!
vs2005,新建了一个项目:WindowsApplication。
在窗体上面放一个“OpenFileDialog”控件和一个button控件。

在这个button的点击事件中,以下二种写法都可以运行代码。
private   void   button1_Click(object   sender,   EventArgs   e)
{
                        OpenFileDialog   openFileDialog   =   new   OpenFileDialog();
                        openFileDialog.Filter   =   "文件(*.txt)|*.txt ";
                        openFileDialog.Multiselect   =   false;
                        openFileDialog.ShowDialog();
}
private   void   button1_Click(object   sender,   EventArgs   e)
{
                        this.openFileDialog1.Filter   =   "文件(*.txt)|*.txt ";
                        this.openFileDialog1.Multiselect   =   false;
                        this.openFileDialog1.ShowDialog();

但是我想问这二种写法的区别是什么??

使用this.openFileDialog和new一个openFileDialog到底有什么区别???

------解决方案--------------------
new一个变量是在内存中给这个变量分配空间,
你的第一个写法,可以用openFileDialog 得到你想要上传的对象.
但是你的第二个写法,你认为可以得到吗??
------解决方案--------------------
如果你自己拉了一个控件,说明VS已经为你创建了一个,而第一种,是你自己又重新创建的.

没什么不同,完全一样.只是第一种,你会浪费一个VS已经为你创建好并实例好的控件,严格的讲是一种资源浪费.