自动重新绑定ASP.NET回发上的控件

时间:2010-12-29 16:49:41

标签: asp.net

我可以设置一个标志或属性值,让我的控件在每个页面加载时重新绑定,而不仅仅是初始加载吗?我仍然是ASP.NET的新手,所以我想在诉诸“工作”的第一件事之前正确地做(如果存在这样的方式)。

我正在开发一个简单的WebForms页面,它归结为一些SQLDataSource绑定的Repeater;例如:

<asp:Repeater ID="ExampleRepeater" runat="server" DataSourceID="ExampleDataSource"
              OnItemDataBound="ExampleRepeater_ItemDataBound">
     <ItemTemplate>
         <asp:Label ID="DataboundControlID" runat="server" Text='<%# Eval("ExampleColumnName")%>' />
     </ItemTemplate>
</asp:Repeater>

<asp:SqlDataSource ID="ExampleDataSource" runat="server" ConnectionString="example_connection_string"
        SelectCommand="ExampleStoredProcedure" SelectCommandType="StoredProcedure">
        <SelectParameters>
            <asp:Parameter DefaultValue="exampleValue" Name="parameter1" Type="String" />
        </SelectParameters>
</asp:SqlDataSource>

用户与我的页面交互后,他们可以启动回发,这将改变数据库的状态。我希望postback'ed页面能够反映数据库的变化。如果我能进一步澄清我的情况,请告诉我。

2 个答案:

答案 0 :(得分:1)

在处理即更新数据库之后,您可以通过调用DataBind方法重新绑定Repeater,如:

ExampleRepeater.DataBind();

答案 1 :(得分:0)

根据我的经验,有些控件有,有些则没有。例如。 Microsoft的标准ASP.NET控件总是自动为我工作,而DevExpress的ASPxGridView需要在每次回发/回调时手动重新绑定。