【既然不能使用指针】这是如何做到的?

开始接触C#一星期多了,不让用指针始终让人非常头疼。
今天碰到的是多窗口问题,网上查了个代码,不太懂:

C# code ?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
//form1:
public  partial  class  Form1 : Form
     {
         public  delegate  void  MyDel( string  value);
         public  event  MyDel txtzt;
         public  Form1()
         {
             InitializeComponent();
         }
                        
         private  void  button1_Click( object  sender, EventArgs e)
         {
            Form2 f2 =  new  Form2( this ); //this这里说的是指针,伏笔
                  f2.Show();
         }
 
     }
//form2
public  partial  class  Form2 : Form
     {
          public  Form2(Form1 f1) //Form1吗?你确定不是Form1*吗?刚才明明给的是指针呀
         {
             InitializeComponent();
             f1.txtzt +=  new  Form1.MyDel(txtzt);
         }
         
         private  void  txtzt( string  s)
         {
             this .textBox1.Text = s;
         }
     }


按照我的理解,既然在Form2里可以直接修改Form1的内容,那只有指针才能做到的呀。
而偏偏C#不允许用指针(嘴上说不让用,难道背地里还是在用指针?)

转载于:https://www.cnblogs.com/ahwankong/p/3297147.html

你可能感兴趣的:(c#)