2016-06-07 39 views
1

我有两个webform一个是JournaL Book.aspx,另一个是Journal Entry.aspx。 网络形式JournaL Book.aspx由一个图像按钮组成,即imgbtnentry和textbox即txtjournalname.And webform Journal Entry.aspx由标签组成,即lbljournalbookname。在这里,我试图显示任何文本输入到文本框,即txtjournalname在另一个页面的lbljournalbookname,即日记Entry.aspx按钮单击,如果我没有输入任何文本框中的标签文本应该是Untitled Journal.So问题是,无论我在标签文本中显示的文本框中输入,但是当我没有输入任何标签文本时,没有标签文本中的无标题日记。会话变量不回滚值

代码按钮即imgbtnentry落后于杂志Book.aspx

protected void imgbtnentry_Click(object sender, ImageClickEventArgs e) 
{ 
    if (txtjournalname.Text != null) 
    { 
     Session["JournalBookName"] = txtjournalname.Text; 
     Response.Redirect("Journal Entry.aspx"); 
    } 
    else 
    { 
     Session["JournalBookName"] ="Untitled Journal"; 
     Response.Redirect("Journal Entry.aspx"); 
    } 

} 

代码的网页加载在杂志Entry.aspx

protected void Page_Load(object sender, EventArgs e) 
{   
    if (!IsPostBack) 
    {   
     lbljournalbookname.Text = Session["JournalBookName"].ToString();    
    }    

} 
+0

设置断点,遍历代码,检查变量。 – CodeCaster

回答

2

TextBox.Text从不返回null,所以这是没有意义的:

if (txtjournalname.Text != null) 
{ 
    // .... 
} 

因为TextBox.Text返回一个空字符串,即使我如果您明确指定null

所以用这个:

Source

顺便说一句,这不仅是一个ASP.NET的事情,甚至是所有的WinForms控件具有相同行为。 Source of Control.Text

+0

感谢您的帮助 – sudipchand7139