日期:2014-05-17  浏览次数:20928 次

很奇怪的问题!!!条件已经满足,但是事件不能被触发
本帖最后由 bulls5988 于 2013-04-18 21:22:46 编辑
FORM1和FORM2,FORM1有一个LISTBOX,在FORM2中用事件向FORM1的LISTBOX加入字符串。
在FORM1里Public static 两个变量,一个整型一个字符串型,在FORM2的事件里判断FORM1的LISTBOX中的行是否有和FORM2里的TextBox中一样的值,如果有做处理。前面一系列操作都没问题,但是就在最后判断 行和TextBOx1中内容是否一样的时候出问题了,我用MESSAGEBOX显示,明明两个字符串一模一样但是事件就是不被触发!!?? 

明明两个值就一样


部分代码 
FORM1代码


public static int yjxf = 0;
public static string yjxfkh = "";
private void b_allfee_Click(object sender, EventArgs e)
        {
            zxf = 0;
            yjxf = 0;
           if (l_cardshare_list.Items.Count > 0)
           {
            foreach (string czk_je in l_cardshare_list.Items)
            {
            if(czk_je.Substring(czk_je.IndexOf("会员卡号:") + 4,10) == "1216000001")
            {
             yjxf += Convert.ToInt32(czk_je.Substring(czk_je.IndexOf("消费:") + 3));
             yjxfkh = czk_je.Substring(czk_je.IndexOf("会员卡号:") + 4,10);
             }
             zxf += Convert.ToInt32(czk_je.Substring(czk_je.IndexOf("消费:") + 3));
             } 
             return;
            }
            else
            {
                l_czk_xfe.Text = "0";
            }
}

t_cardid.Text内容为:121600000120130414925296418
FORM2代码 MessageBox.Show的结果明明: 两行输出都是"1216000001" 为什么  
if (t_cardid.Text.Substring(1,10).ToString() == park_fee_out.yjxfkh.ToString())
不能被触发呢!???



           if (t_cardid.Text.Length == 27)
            {
MessageBox.Show(t_cardid.Text.Substring(0, 10) + Environment.NewLine + 
park_fee_out.yjxfkh + Environment.NewLine +
 Convert.ToInt32(park_fee_out.yjxf).ToString());
string shared_sql = "select * from storevaulecard_data where storevaluecard_cardid =
 '" + t_cardid.Text + "'";
                SqlConnection