大家好!我刚学C#,有个小问题想请教下各位。问题如标题,我想在Palette.cs类中改变主窗体FrmTetris.cs中Label.Text的属性,但修改不成功,希望各位帮帮忙,先谢谢了!两个类的部分代码如下:FrmTetris.cs类中的关键代码:
private Palette p;
p = new Palette(paletteWidth, paletteHeight, rectPix, paletteColor, Graphics.FromHwnd(pbRun.Handle), Graphics.FromHwnd(lblReady.Handle),this);
p.Start();
Palette.cs类中的关键代码:
class Palette
  {
  private int _width = 15;//画板宽度
  private int _height = 25;//画板高度
  private Color[,] coorArr;//固定数组
  private Color disapperColor;//背景色
  private Graphics gpPaltte;//活动画板
  private Graphics gpReady;//下一个样式画板
  private BlockGroup bGroup;//生产机
  private Block runBlock;//正在活动
  private Block readyBlock;//下一个
  private int rectPix;//单元格像素
  FrmTetris f;public Palette(int x,int y,int pix,Color dColor,Graphics gp,Graphics gr,FrmTetris f1)
  {
    
  _width = x;
  _height = y;
  coorArr = new Color[_width,_height];
  disapperColor = dColor;
  gpPaltte = gp;
  gpReady = gr;
  rectPix = pix;
  f = f1;
}
//这里还有一个定时器在CheckAndOverBlock()
public void Start()//开始
        {
     //初始化定时器
            timerBlock = new System.Timers.Timer(_timeSpen);
            timerBlock.Elapsed += new System.Timers.ElapsedEventHandler(OnTimedEvent);//实际使用了委托
            timerBlock.AutoReset = true;//每隔800MS都会执行OnTimedEvent
            timerBlock.Start();
        }
        private void OnTimedEvent(object source,ElapsedEventArgs e){
            CheckAndOverBlock();
            Down();
        } public void CheckAndOverBlock()//检查转块是否到底
{
//省去部分代码
CheckAndDelFullRow() ;
}
 private void CheckAndDelFullRow() //检查并删除满行
  {
//省去部分代码
Fen();
}public void Fen()//加分
  {
    
  string score = f.t_score.Text;
  int fen = Convert.ToInt32(score) + 50;
  f.t_score.Text = Convert.ToString(fen);
  }