我正在尝试构建一个简单的应用程序,它将根据提供的一组术语请求输入。首先点击一下按钮:
protected void InventoryMoveButton_Click(object sender, EventArgs e)
{
DataDisplay.Text = "Inventory Move:";
isDataStringMode = false;
InstructionsLabel.Text = InventoryInstructions; //displays instruction text
InventoryMove();
}
显示一些文字并拨打InventoryMove()
。
void InventoryMove()
{
string[] keyList = { "FROM", "TO", "QUANTITY" }; //moving from somewhere to somewhere
DataDisplay.Text = "hello from inventory move"; //this is a textbox
BuildScreen("Inventory Move", BuildKeyList(keyList));
}
该方法提供了一个术语列表,它需要从用户到方法BuildScreen()
的值。 BuildKeyList()
只是接受这些术语并将它们放入BuildScreen()
接受的ArrayList中。 BuildScreen()
定义如下:
void BuildScreen(string action, ArrayList listOfKeys)
{
int input;
DataDisplay.Text += "lol hi from BuildScreen";
//DataTextBox.Text = "";
DataDisplay.Text = action + "\n";
//dataValues.Clear(); //empty previous values as they are not part of the current operation
foreach (string key in listOfKeys)
{
DataDisplay.Text += key + ": ";
input = readValidNumber();
DataDisplay.Text += input + "\n";
dataValues.Add(key, input);
}
}
我遇到的问题是,点击按钮后,您在我的第一段代码中看到的InstructionsLabel
文字永远不会改变。因此,代码似乎悬而未决,但这可能只是在文本有机会改变之前在其他地方引起的错误。单击按钮时,为什么此代码会挂起?