【发布时间】:2012-06-04 22:26:50
【问题描述】:
我有以下 .aspx 页面。我正在搜索数据库中的单词,一切正常。我还有一个超链接,如果数据库中不存在该词,它会显示一条消息。
但唯一的问题是,当我搜索该单词并且该单词不在数据库中时,它不会从第一次显示 HyperLink,我必须单击 ENTER 两次才能使其工作,然后单击 CLEAR 两次它消失了。
我知道问题是我在 page_load 之后有按钮,但我找不到它的解决方案。我尝试的是创建另一个函数 private void load_data() 并将 page_load 中的所有内容复制到其中。在 load_page 和 button2_click 中调用 load_data();它不起作用。
代码如下:
namespace TRI_Portal.ScreenPop.Gloss
{
public partial class Gloss_Test : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (GridView2.Rows.Count == 0)
{
HyperLink1.Visible = true;
}
else
{
HyperLink1.Visible = false;
}
String s = Request.QueryString["language"];
Language1.Text = Server.HtmlEncode(s);
}
}
}
我也试过这个,但没有运气。
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
SetLink();
}
}
private void SetLink()
{
if (GridView2.Rows.Count == 0)
{
HyperLink1.Visible = true;
}
else
{
HyperLink1.Visible = false;
}
String s = Request.QueryString["language"];
Language1.Text = Server.HtmlEncode(s);
}
protected void Button2_Click(object sender, EventArgs e)
{
SetLink();
}
有什么建议吗?
【问题讨论】: