我有两个表格 Form1 里面有类CharStats
, Mainform 里面有类MainForm
。MainForm
有一个与之关联的标签pcNameLabel
并CharStats
包含一个按钮,该按钮应该在单击时更改pcNameLabel.Text
。由于我在表单和类之间进行通信,因此我在其中设置了一个静态方法,SetInfo()
由. 整个事情几乎可以正常工作,只是由于静态非静态事物,我无法从静态方法内部进行修改。那么我该怎么做。MainForm
StatTransfer()
CharStats
pcNameLabel.Text
SetInfo()
Mainform(我删掉了一些处理变量的不相关数据)
public partial class MainForm : Form
{
int statHolder;
int statAdjuster;
string healthHolder;
int finalHealth;
int diceOut;
int maxDice;
int healingOnOff = 0;
int pcOrEn = 0;
int turnCount = 0;
int diceType;
int diceResult;
public static int formInit = 0;
public static string VariableLabel1;
public static string Variable2;
Random _r = new Random();
public MainForm()
{
CharStats form = new CharStats();
form.Show();
InitializeComponent();
}
public static void SetInfo()
{
Variable2 = VariableLabel1;
pcNameLabel.Text = Variable2;
}
}
Form1(也删减变量处理数据)
public partial class CharStats : Form
{
string name = "";
string health = "";
string mana = "";
string strength = "";
string agility = "";
string intelligence = "";
public CharStats()
{
InitializeComponent();
}
void Fighter()
{
name = "Reginaldxxxxxxx";
health = "200";
mana = "50";
strength = "16";
agility = "12";
intelligence = "6";
}
public void StatTransfer()
{
MainForm.VariableLabel1 = Name;
MainForm.formInit = 1;
MainForm.SetInfo();
}
void FighterButtonClick(object sender, EventArgs e)
{
Fighter();
StatTransfer();
}
}