Obout DropDownList показывает неправильный выбор при добавлении нового

При загрузке первой страницы в раскрывающемся списке в шаблоне редактирования отображается значение "выберите нужное значение" и выбранное значение равно 0. Но когда я изменяю это значение, то при следующем следующем добавлении нового выбранный индекс, показанный в раскрывающемся списке, является предыдущим. в то время как это должно показать, выберите пожалуйста для каждого нового элемента. Я перепробовал все возможные пути, но все прошло напрасно. Вот мой код.

<cc1:Grid ID="gridStaff" runat="server" FolderStyle="~/Styles/premiere_blue" Width="600px" AllowAddingRecords="true" AllowFiltering="false" CallbackMode="true" Serialize="true" AllowColumnReordering="true" AllowPaging="true" AutoGenerateColumns="false" EnableRecordHover="true" EnableTypeValidation="false" PageSize="25" OnRebind="RebindGrid" OnInsertCommand="InsertRecord" OnDeleteCommand="DeleteRecord"                   OnUpdateCommand="UpdateRecord" OnRowDataBound="gridStaff_RowDataBound" >
 <ClientSideEvents OnBeforeClientDelete="Row_Deleting" />
                    <ScrollingSettings ScrollWidth="100%" />
                    <Columns>
                          <cc1:Column DataField="SalesPerson_Id" Visible="false" ReadOnly="true"
                            HeaderText="SalesPerson ID" runat="server">
                            <TemplateSettings RowEditTemplateControlId="SalesPerson_Id" RowEditTemplateControlPropertyName="value" />
                        </cc1:Column>
                        <cc1:Column DataField="SalesPerson_ID_V3Account" HeaderText="Username" Width="20%" runat="server">
                            <TemplateSettings TemplateId="SalesPerson_V3Account" RowEditTemplateControlId="SuperForm1_SalesPerson_ID_V3Account" RowEditTemplateControlPropertyName="value" />
                        </cc1:Column>

                    </Columns>
                    <ClientSideEvents OnClientEdit="onAddEdit"  OnBeforeClientUpdate="onBeforeInsertUpdate" OnClientPopulateControls="onClientPopulateControls"
                        OnBeforeClientInsert="onBeforeInsertUpdate" OnBeforeClientCancelEdit="onBeforeClientCancelEdit" OnClientCancelEdit ="onBeforeClientCancelEdit"  />
                    <Templates>
                        <cc1:GridTemplate runat="server" ID="SalesPerson_V3Account">
                            <Template>
                                <%# GetUserNameById(Convert.ToInt32(Container.DataItem["SalesPerson_ID_V3Account"]))%>
                            </Template>
                        </cc1:GridTemplate>

                    </Templates>
                    <TemplateSettings RowEditTemplateId="tplRowEdit" />
                    <Templates>
                        <cc1:GridTemplate runat="server" ID="tplRowEdit">
                            <Template>
                                <input type="hidden" id="SalesPerson_Id" />
                                <table width="100%" class="rowEditTable">
                                    <tr>
                                        <td>
                                            <fieldset style="padding:5px; width:100%;">
                                                <legend>Sales Person Detail</legend>
                                                <table>
                                                                                                       <tr>
                                                        <td>V3 Account
                                                        </td>
                                                        <td>
                                                            <cc3:OboutDropDownList ClientIDMode="Static" runat="server" ID="SuperForm1_SalesPerson_ID_V3Account"  Width="300" Height="175"
                                                                DataSourceID="odsQCSUsers" DataTextField="username" AppendDataBoundItems="true" DataValueField="user_Id">
                                                                <asp:ListItem Text="Please Select" Value="Please Select" Selected="True"> </asp:ListItem>

                                                            </cc3:OboutDropDownList>          
                                                        </td>
                                                    </tr>

                                                                                                    </table>
                                            </fieldset>
                                        </td>
                                    </tr>                                   

                                    <tr>
                                        <td >
                                            <cc3:OboutButton runat="server" FolderStyle="~/Styles/premiere_blue/interface/OboutButton" Text="Save" OnClientClick="gridStaff.save(); return false;" ValidationGroup="1"
                                                Width="75" />
                                            <cc3:OboutButton runat="server" FolderStyle="~/Styles/premiere_blue/interface/OboutButton" Text="Cancel" OnClientClick="grid.cancel(); return false;"
                                                Width="75" />
                                        </td>
                                    </tr>
                                </table>
                            </Template>
                        </cc1:GridTemplate>
                    </Templates>
                                    </cc1:Grid>

Редактирование:

Временно, я решил эту проблему, используя ClientSideEvents, т.е. функцию OnClientPopulateControls. Я просто добавил следующие строки в моем Gridview.

<ClientSideEvents OnClientPopulateControls="onClientPopulateControls"/>

function onClientPopulateControls(record,type) {            
            if (type == "add")
            {
                record.SalesPerson_ID_V3Account = "Please Select";
                record.SalesPerson_TeamType="Please Select";           
            }           
        }

Но, все еще ищем лучшее и надежное решение. Спасибо!

0 ответов

Другие вопросы по тегам