フォーラムをプログラミングしています。マイshowcomment.aspx
ページでは、Repeater を使用して SQL データベースからコメントを取得し、トピックごとに表示しています。
UpdatePanel を使用して、データベースに挿入された新しいコメントを自動更新します。
<asp:ScriptManager ID="ScriptManager1" runat="server"/>
<div onclick="__doPostBack('UpdatePanel1', '');">
<asp:UpdatePanel ID="UpdatePanel1" runat="server" OnLoad="UpdatePanel1_Load">
<ContentTemplate>
<asp:Repeater ID="RepeaterComment" runat="server">
....
</asp: Repeater...>
</ContentTemplate>
</asp: UpdatePanel>
</div>
UpdatePanel1_Load():
public void UpdatePanel1_Load(Object sender, EventArgs e)
{
int idtopic = Convert.ToInt32(Request.QueryString["idtopic"]);
BindRepeaterComment(idtopic);
}
Update Panel と Timer Control を使用して UpdatePanel を自動更新することをお勧めします。
<asp:Timer ID="AutoRefreshTimer" runat="server"
Interval="10000"
ontick="AutoRefreshTimer_Tick"/>
しかし、新しい行がデータベースに挿入されたときにのみ更新したいだけです。
データベースに新しい行を挿入する関数は、コメント ページの表示と同じページではなく、別の aspx ページにあります。
srcipt を使用して UpdatePanel を更新することもお勧めします。
<script type="text/javascript">
var UpdatePanel1 = '<%=UpdatePanel1.ClientID%>';
function ShowItems()
{
if (UpdatePanel1 != null)
{
__doPostBack(UpdatePanel1, '');
}
}
</script>
しかし、ShowItem() 関数を呼び出す方法がわかりません。
誰かが私に尋ねて、行を追加してみてください:UpdatePanel1.Update()
データベースに新しい行を追加した後、「新しい行を追加」機能は別のページにあるので、できません。
ボタンなしでデータベースの変更を実現し、新しいコメントを自動更新する方法(データベースに変更があるときに更新するだけ)はどうすればよいですか。
ヘルプ?私は ASP.net を初めて使用するので、何日も解決策を見つけようとしました。