HiddenField的值正确,但在C#ASP.NET中显示的值错误
我在一个按钮点击方法中有以下代码,该方法遍历HiddenField的值正确,但在C#ASP.NET中显示的值错误,c#,asp.net,gridview,C#,Asp.net,Gridview,我在一个按钮点击方法中有以下代码,该方法遍历GridView的行ServiceFormQuestionTypeIDHF是一个HiddenField 第一次通过foreach语句时,sfqtidt的值为10,sfqtidtr的值为“10”,而if语句为true。现在我希望HiddenField.ToInt()的值为1 我可以确认foreach语句的其余部分和if语句的其余部分在sfqtIdSTR和sfqtidit中显示了错误的值,但是if语句的行为是我在GridView中从该行期望的值。换句话说,
GridView
的行ServiceFormQuestionTypeIDHF
是一个HiddenField
第一次通过foreach
语句时,sfqtidt
的值为10,sfqtidtr
的值为“10”,而if语句为true。现在我希望HiddenField.ToInt()
的值为1
我可以确认foreach
语句的其余部分和if语句的其余部分在sfqtIdSTR
和sfqtidit
中显示了错误的值,但是if语句的行为是我在GridView
中从该行期望的值。换句话说,HiddenField
的值正确,但显示的值错误
我看不出有什么理由。有人能提供一个理由吗
foreach (TableRow tr in FormGV.Rows)
{
HiddenField ServiceFormQuestionTypeIDHF = (HiddenField) tr.FindControl("ServiceFormQuestionTypeIDHF");
int sfqtIdINT = ServiceFormQuestionTypeIDHF.Value.ToInt();
string sfqtIdSTR = ServiceFormQuestionTypeIDHF.Value;
if ((ServiceFormQuestionTypeIDHF.Value.ToInt() == 1 )||
(ServiceFormQuestionTypeIDHF.Value.ToInt() == 2))
{ .......
.......
}
尝试在foreach中使用GridViewRow而不是TableRow。奇怪的问题。尝试执行
如果(sfqtidt==1 | | sfqtidt==2)
?欢迎使用堆栈溢出。你说得对。谢谢