我有代码,我知道我已经完成了 99% 的工作。MS VS2008 中的 C# 编码。
基本上我有一个有 4 个单选按钮和一个继续按钮的表单。用户单击其中一个单选按钮并单击继续,这一切正常。
但是,我想使用用户输入的值(即,如果他们单击第一个按钮,我想要一个等于 1 的变量,第二个按钮等于 2,依此类推)。我尝试在各个方面这样做,但我可以让它运行的唯一地方是在私有 void btnOkClick 行中,这意味着我可以使用这个 void 之外的值,这是我真正想要的。
我尝试过设置一些枚举等(在下面的代码中注释掉),但我不太明白。我知道我必须接近,但是当我继续阅读帖子并且无法完全掌握它时,我的新手真的表现出来了。
简而言之,我希望我的 VS2008 项目中的其他类能够引用用户在初始表单中选择的任何值。
namespace AmortClient
{
public partial class frmLoadACTFCST : Form
{
public frmLoadACTFCST()
{
InitializeComponent();
//set the parent of the form to the container
//this.MdiParent = parent;
}
//public enum ACTFCST
//{
// ACT = 1,
// FCST = 2,
// PLAN = 3,
// FiveYearPlan2012=4
//}
//private ACTFCST _actfcst = ACTFCST.ACT;
//public ACTFCST actfcst
//{
// get { return _actfcst; }
// set { _actfcst = value; }
//}
private void frmLoadACTFCST_Load(object sender, EventArgs e)
{
}
private void groupBox1_Enter(object sender, EventArgs e)
{
}
private void btnActual_CheckedChanged(object sender, EventArgs e)
{
}
private void btnForecast_CheckedChanged(object sender, EventArgs e)
{
}
private void btnPlan_CheckedChanged(object sender, EventArgs e)
{
}
private void btn5YrPlan2012_CheckedChanged(object sender, EventArgs e)
{
}
private void btnContinue_Click(object sender, EventArgs e)
{
string ACTFCSTtext = "";
int dataTypeKey = 0;
if (btnActual.Checked)
{
ACTFCSTtext = btnActual.Text;
dataTypeKey = 1;
}
else if (btnForecast.Checked)
{
ACTFCSTtext = btnForecast.Text;
dataTypeKey = 2;
}
else if (btnPlan.Checked)
{
ACTFCSTtext = btnPlan.Text;
dataTypeKey = 3;
}
else if (btn5YrPlan2012.Checked)
{
ACTFCSTtext = btn5YrPlan2012.Text;
dataTypeKey = 4;
}
string msg = "";
msg = ACTFCSTtext + " " + dataTypeKey;
//btn5YrPlan2012
MessageBox.Show(msg);
Close();
}
}
}