我有以下 .aspx 页面。我正在搜索数据库中的单词,一切正常。我还有一个超链接,如果数据库中不存在该词,它会显示一条消息。
但唯一的问题是当我搜索这个词并且这个词不在数据库中时,它从第一次开始就没有显示超链接,我必须点击两次才能让它工作,然后点击两次它才能消失.
我知道问题是我在 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();
}
有什么建议么?