编写一个返回double
数组的函数。该数组包含三个值:“通过用户输入三个数字
ASPX代码:
<%@ Page Language="C#" AutoEventWireup="false"
%GT;
<!DOCTYPE html>
<html>
<head runat="server">
<title>D</title>
</head>
<body>
<br/>
<asp:Button id="t" runat="server" Text="o" />
<br/> <br/>
Result:<asp:TextBox id="cc" runat="server" />
<asp:TextBox id="zz" runat="server" />
<asp:TextBox id="yy" runat="server" />
</form>
</body>
</html>
}
}
}
答案 0 :(得分:1)
“Math”是一个事件处理程序方法,尝试将其声明为void:
public void MathOps(object sender, EventArgs args)
你已经在方法中正确设置了文本框,我认为你不需要额外的数组作为返回,至少这不是正确的方法。
答案 1 :(得分:0)
你不应该为asp:Button元素委托方法返回一个值。尝试将返回值更改为void而不是string []。
<强>更新强>
既然你说你想保持你的MathOps函数返回数据,我假设你也保留你的委托方法......你应该尝试这样的事情:
你需要做这样的事情:
public void CalculateHandler(object sender, EventArgs args)
{
var returnedValuesArr = MathOps();
Avg.Text = returnedValuesArr[0];
}
我不会从MathOps函数内部引用asp:Textbox元素(或任何其他UI元素)。从处理程序内部执行此操作。
显然,如果在代码中更改委托处理程序名称,则还需要在UI Button元素上更新该名称。所以,你需要改变:
<asp:Button id="Cal" runat="server" Text="Calculate" OnClick="MathOps" />
到
<asp:Button id="Cal" runat="server" Text="Calculate" OnClick="CalculateHandler" />
顺便说一句......你也可能希望将MathOps方法的值(Num1.Text,Num2.Text等)作为参数发送。