我正在尝试在要创建的程序中的表单上的各种标签上放置点击侦听器。单击时,事件处理程序将字符串值传递到创建所需字符串的函数中,并将其添加到所需的文本框中。但是,它会为每个字符串添加前缀“ System.Windows.Forms.Label,文本:”。
我尝试使用此处建议的解决方案,即以textbox.text = textbox.text + resultString的方式附加文本框文本。 Winforms: system.windows.forms.label text displayed as text in label
onclick监听器之一的示例是
private void AthleticsLabel_Click(object sender, EventArgs e)
{
strengthRolling("Athletics");
}
及其调用的函数之一的示例是
public void strengthRolling(string value)
{
int rollResult = myCharacter.rollStr(20);
int secondRoll = myCharacter.rollStr(20);
int result;
if (myCharacter.checkProf(value))
{
rollResult += myCharacter.Proficiency;
secondRoll += myCharacter.Proficiency;
}
if (AdvantageButton.Checked == true || DisadvantageButton.Checked == true)
{
if (AdvantageButton.Checked) { result = Math.Max(rollResult, secondRoll); }
else { result = Math.Min(rollResult, secondRoll); }
}
else { result = rollResult; }
ChatDisplayBox.Text += Environment.NewLine + charName + " rolled a " + result.ToString() + " on their " +value+ " check.";
}
如果单击“田径”标签,我希望将以下消息添加到ChatDisplayBox中: Mlarcin在田径比赛中获得了15分。
但是当前结果是: System.Windows.Forms.Label,文字:Mlarcin在田径检查中获得了15分。