每次更新,删除或插入任何记录时,我都会尝试更新GridView。现在我在Design Code中为GridView提供了sql数据源代码而不是表单代码。现在我该如何从那里更新它?当我在表单代码上编写GridView1.databind()时,它会显示
> DataSource和DataSourceID都在'GridView1'上定义。删除一个定义。
有人能告诉我如何在设计视图中使用DataBind,每次插入/更新/删除记录时都要更新GridView吗?
这是GridView1代码
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" AutoGenerateSelectButton="True" BackColor="White" BorderColor="#999999" BorderStyle="Solid" BorderWidth="1px" CellPadding="3" DataSourceID="SqlDataSource1" ForeColor="Black" GridLines="Vertical" Width="284px">
<AlternatingRowStyle BackColor="#CCCCCC" />
<Columns>
<asp:BoundField DataField="name" HeaderText="name" SortExpression="name" />
<asp:BoundField DataField="surname" HeaderText="surname" SortExpression="surname" />
<asp:BoundField DataField="amount" HeaderText="amount" SortExpression="amount" />
</Columns>
<FooterStyle BackColor="#CCCCCC" />
<HeaderStyle BackColor="Black" Font-Bold="True" ForeColor="White" />
<PagerStyle BackColor="#999999" ForeColor="Black" HorizontalAlign="Center" />
<SelectedRowStyle BackColor="#000099" Font-Bold="True" ForeColor="White" />
<SortedAscendingCellStyle BackColor="#F1F1F1" />
<SortedAscendingHeaderStyle BackColor="#808080" />
<SortedDescendingCellStyle BackColor="#CAC9C9" />
<SortedDescendingHeaderStyle BackColor="#383838" />
</asp:GridView>
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:myDbConnectionString %>" SelectCommand="SELECT [name], [surname], [amount] FROM [Table1]"></asp:SqlDataSource>
答案 0 :(得分:2)
将DataSourceID设置为null。
GridView1.DataSourceID = null;
GridView1.DataSource = dt;
GridView1.DataBind();
答案 1 :(得分:0)
该错误即将发生,因为数据在设计视图代码和Web表单后端代码上都被绑定了。 我只是添加了GridView1.DataSourceID = null;
这就完成了工作。