gridview.databind() не обновляется

#c# #asp.net #gridview #data-binding

#c# #asp.net #gridview #привязка данных

Вопрос:

У меня есть gridview :

                             <asp:TemplateField>
                                <HeaderTemplate>
                                    <asp:Label ID="lblHeaderDesc" runat="server" CssClass="Highlights_header" Text="Description"> </asp:Label>
                                </HeaderTemplate>
                                <ItemTemplate>
                                    <asp:Label ID="lblDesc" runat="server" CssClass="Reportlabel" Text='<%# Bind("ProgDesc") %>'></asp:Label>
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField>
                                <HeaderTemplate>
                                    <asp:Label ID="lblHeaderStartDate" runat="server" CssClass="Highlights_header" Text="Start Date"> </asp:Label>
                                </HeaderTemplate>
                                <ItemTemplate>
                                    <asp:Label ID="lblStartDate" runat="server" CssClass="Reportlabel" Text='<%# Bind("StartDate") %>'></asp:Label>
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField>
                                <HeaderTemplate>
                                    <asp:Label ID="lblHeaderEndDate" runat="server" CssClass="Highlights_header" Text="End Date"> </asp:Label>
                                </HeaderTemplate>
                                <ItemTemplate>
                                    <asp:Label ID="lblEndDate" runat="server" CssClass="Reportlabel" Text='<%# Bind("EndDate") %>'></asp:Label>
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField ItemStyle-CssClass="GridRow_Amount">
                                <HeaderTemplate>
                                    <asp:Label ID="lblHeaderBudget" runat="server" CssClass="Highlights_header" Text="Budget Amount"> </asp:Label>
                                </HeaderTemplate>
                                <ItemTemplate>
                                    <asp:Label ID="lblBudget" runat="server" CssClass="Reportlabel" Text='<%# Bind("Budget") %>'></asp:Label>
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField>
                                <HeaderTemplate>
                                    <asp:Label ID="lblHeaderStatus" runat="server" CssClass="Highlights_header" Text="Status"> </asp:Label>
                                </HeaderTemplate>
                                <ItemTemplate>
                                    <asp:Label ID="lblStatus" runat="server" CssClass="Reportlabel" Text='<%# Bind("Status") %>'></asp:Label>
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField ItemStyle-CssClass="GridRow_Links">
                                <HeaderTemplate>
                                    <asp:Label ID="lblHeaderView" runat="server" CssClass="Highlights_header" Text="View Details"> </asp:Label>
                                </HeaderTemplate>
                                <ItemTemplate>
                                    <asp:LinkButton ID="lnkProgName" runat="server" CssClass="Reportlabel" Text="Open"
                                        OnClick="lnkProgName_Click"></asp:LinkButton>
                                </ItemTemplate>
                            </asp:TemplateField>
                        </Columns>
                        <PagerStyle BackColor="#666666" ForeColor="White" HorizontalAlign="Center" />
                        <SelectedRowStyle BackColor="#C5BBAF" Font-Bold="True" ForeColor="#333333" />
                        <RowStyle HorizontalAlign="Left" CssClass="GridRow_DSM" />
                        <HeaderStyle HorizontalAlign="Center" CssClass="GridHeaderRow" />
                        <AlternatingRowStyle HorizontalAlign="Left" CssClass="GridRowAlt_DSM" />
                    </asp:GridView>
 

в коде, который я использую

grvProgramSearch.datasource = somedatasource // это заполняется grvProgramSearch.databind()

Однако источник данных заполнен правильно, но gridview не заполняется.

Ответ №1:

Запись

 grvProgramSearch.DataBind();
 

После,

 grvProgramSearch.DataSource = somedatasource;
 

Комментарии:

1. Я делаю это, но это бесполезно.