1

asp.netページ(vb.net)にgridviewコントロールがあります。また、「キャンセル」ボタンがあります。これを押すと、現在のコンテンツのグリッドビューがクリアされます。

ただし、キャンセルボタンを押すと、ページがリロードされるだけで、グリッドビューには、クリアしたいのと同じデータが表示されたままになります。

私がstackoverflowで見つけた提案に基づいて、データソースを何にも設定しませんでしたが、それは機能していません。

キャンセルボタンのコードは次のとおりです。

    Private Sub btnCancel_Click(sender As Object, e As System.EventArgs) Handles btnCancel.Click
    gvQuizReport.DataSource = Nothing
    gvQuizReport.DataBind()
End Sub

どんな提案でも大歓迎です!

ありがとう

4

4 に答える 4

3

あなたは試すかもしれません:

gvQuizReport.Columns.Clear()

@Leniel Macaferiが言ったように、グリッドビューを非表示にすることも可能な解決策です。

于 2012-04-10T15:51:31.217 に答える
1

表示したコードは結果を「クリア」する必要がありますが、何も表示したくない場合は、gvQuizReport.Visible = False;を使用してグリッドビューを非表示にします。

于 2012-04-10T15:45:29.303 に答える
1

ページをリロードせずに本当にクリアしたい場合は、クライアント側のスクリプトを使用してグリッドオブジェクトを非表示にすることができます。

jquery非表示

于 2012-04-10T16:24:56.463 に答える
1

updatepanelにある程度の関心を示したので、慣れていない場合のスターターコードを次に示します。

<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Always">
        <ContentTemplate>
            <asp:GridView ID="GridView1" runat="server">
            </asp:GridView>
        </ContentTemplate>
</asp:UpdatePanel>

すでにページにがあるscriptmanager場合は、別のページを追加する必要はありません(エラーが発生します)。updatepanelの実装に問題がある場合は、別の質問を投稿してください。たくさんの人がそれを手伝ってくれます。

于 2012-04-10T19:14:50.047 に答える