RadGrid不按顺序显示行(插入记录序列)

时间:2015-09-01 03:14:31

标签: asp.net radgrid

以下是RadGrid的HTML代码:

<telerik:RadGrid ID="RGGSTAcCode" runat="server" AutoGenerateColumns="false"  
                                                                                         ShowFooter="True" GroupingEnabled="False" ShowStatusBar="true"         
                                                                                         AllowAutomaticInserts="False" AllowAutomaticUpdates="False" AllowAutomaticDeletes="true"
                                                                                         OnNeedDataSource= "rggstAcCode_NeedDataSource" OnItemDataBound="rggstAcCode_ItemDataBound"                    
                                                                                         OnInsertCommand="rggstAcCode_InsertCommand" OnDeleteCommand="rggstAcCode_DeleteCommand"
                                                                                         OnUpdateCommand="rggstAcCode_UpdateCommand" OnItemCommand="RGGSTAcCode_ItemCommand"
                                                                                         EnableEmbeddedSkins="true" Skin="Outlook">

                                                                                        <mastertableview commanditemdisplay="Top" autogeneratecolumns="false" datakeynames="AccountCodeID" 
                                                                                            insertitempageindexaction="ShowItemOnCurrentPage" ShowFooter="True" ShowHeadersWhenNoRecords="true">
                                    <CommandItemSettings AddNewRecordText="New" />
                                    <Columns>
                                        <telerik:GridEditCommandColumn UniqueName="imagebutton1" ButtonType="ImageButton"></telerik:GridEditCommandColumn>

                                        <telerik:GridTemplateColumn DataField="in_line" HeaderText="Line Number"> 
                                          <ItemTemplate> 
                                             <asp:Label ID="Label1" runat="server" Text="<%# Container.DataSetIndex+1 %>"></asp:Label> 
                                          </ItemTemplate> 
                                        </telerik:GridTemplateColumn>

                                        <telerik:GridTemplateColumn UniqueName="AccountCode" HeaderText="Account Code">
                                            <ItemTemplate>
                                                <asp:Label ID="lblAcCode" Text='<%# Eval("AccountCode") %>' runat="server"></asp:Label>
                                            </ItemTemplate>
                                            <EditItemTemplate>
                                                <asp:Label ID="lblAcCode2" runat="server" Text='<%# Eval("AccountCode") + " - " + Eval("AccountDescription")%>' Visible="false"></asp:Label>

                                                <telerik:RadComboBox ID="ddlAccountCode" runat="server" Height="200" Width="250" DropDownWidth="350" 
                                                    HighlightTemplatedItems="true" Filter="Contains" AppendDataBoundItems="true" DataTextField="AccountDescription" DataValueField="AccountCodeID"
                                                    OnItemsRequested="ddlAccountCode_ItemsRequested" ItemsPerRequest="50" EnableItemCaching="true"
                                                    AutoPostBack="true" OnSelectedIndexChanged="ddlAccountCode_SelectedIndexChanged"
                                                    EnableLoadOnDemand="True" ShowMoreResultsBox="true" EnableVirtualScrolling="true">
                                                </telerik:RadComboBox>

                                            </EditItemTemplate>
                                        </telerik:GridTemplateColumn>

                                        <telerik:GridBoundColumn DataField="AccountDescription" HeaderText="Description"
                                            UniqueName="AccountDescription" SortExpression="AccountDescription" ReadOnly="True">                                           
                                        </telerik:GridBoundColumn>                                     

                                        <telerik:GridBoundColumn aggregate="SUM" DataFormatString="{0:n}" DataField="Amount" HeaderText="Amount" FooterAggregateFormatString="Total : {0:###,##0.00}" 
                                            UniqueName="Amount" SortExpression="Amount" FooterStyle-BackColor="#ffc04c">
                                            <ItemStyle HorizontalAlign="Left" /> 
                                            <FooterStyle HorizontalAlign="Left" /> 
                                            <ColumnValidationSettings EnableRequiredFieldValidation="true">
                                                <RequiredFieldValidator ForeColor="Red" Text="*This field is required">
                                                </RequiredFieldValidator>
                                            </ColumnValidationSettings>                                            
                                        </telerik:GridBoundColumn>

                                        <telerik:GridBoundColumn DataField="Remark" HeaderText="IFCA Description"
                                            UniqueName="Remark" SortExpression="Remark">
                                            <ItemStyle HorizontalAlign="Left" /> 
                                            <FooterStyle HorizontalAlign="Left" />                                             
                                        </telerik:GridBoundColumn>                                        

                                        <telerik:GridButtonColumn ConfirmTextFormatString="Are you sure you want to Delete Selected Account Code(s)?" ConfirmTextFields="AccountCodeID"
                                         ConfirmDialogType="RadWindow" CommandName="Delete" Text="Delete" UniqueName="DeleteColumn" ButtonType="ImageButton"></telerik:GridButtonColumn>
                                    </Columns>

                                    <EditFormSettings>
                                        <EditColumn ButtonType="ImageButton" />
                                    </EditFormSettings>
                                    <PagerStyle AlwaysVisible="True" PageSizeControlType="RadComboBox" />
                                </mastertableview>
                                                                                    </telerik:RadGrid>

存储过程以在RadGrid中显示数据:

ALTER PROCEDURE [Invoice].[usp_tbl_AccountCode_Select_Transaction]
    @RequestID nvarchar(50)

AS
BEGIN
    SET NOCOUNT ON;

    Select
        AccountCodeID,
        RequestID,
        AccountCode,
        AccountDescription,
        Amount,
        Remark
    From [Invoice].[tbl_AccountCodeTransaction] (NOLOCK)
    Where RequestID = @RequestID

我在这里观察到的是,如果用户按以下数量输入以下行:

1) 0.00(第1次插入时,此为第1行)
2) 2,000.00(当第二次插入时,这将作为第2行)
3) 6,767.00(第3次插入时,这将作为第1行(代替成为第3行)
而前一排将成为第二排&amp;前两排将成为 作为第3行)
4) 56,565.00(第4次插入时,第3行(代替第4行)
&安培; 2,000.00将成为第4排,&amp; 0.00将成为第2行,&amp; 6,767.00将保留为第1行。

以下是上述定义问题的快照: enter image description here

当我插入数据时,我希望数据按顺序显示 RadGrid中的行。即,我插入的第一个应该首先显示, 第2名为第2名,第3名为第3名,依此类推。不是随机顺序。

我试图把“自动生成行号”但也用它 它没有按预期工作。

请告诉我为什么它不按顺序显示数据?
请回复

1 个答案:

答案 0 :(得分:0)

我在Order By CreatedDate语句中添加了Select(此CreatedDate列保存了日期和时间),并且工作正常。非常感谢你帮助@Ondrej Svejdar和@Jayesh Goyani