次の .aspx ページがあります。データベースにある単語を検索していますが、すべて正常に動作します。単語がデータベースに存在しない場合にメッセージを表示するハイパーリンクもあります。
しかし、唯一の問題は、単語を検索し、その単語がデータベースにない場合、最初からハイパーリンクが表示されないことです。それを機能させるには、ENTER を 2 回クリックし、消えるには CLEAR を 2 回クリックする必要があります。 .
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();
}
助言がありますか?