Re: Привязка модального окна к SqlDataSource
От: Haldey2000  
Дата: 01.04.12 06:07
Оценка:
Как видно без примера кода не обойтись. Проблему с добавлением данных из диалогового окна я решил. Но появилось несколько других проблем которые я не могу решить:
1. Валидатор для полей в модальном окне при выводе ошибки после закрытия модального окна не дает работать с таблицей.
2. Модальное окно очень фигово перетаскивается как в IE так и в Опере. в других браузерах не смотрел но думаю будет таже ерунда. Окно при перетаскивании зачастую возвращается в исходное положение и как это полечить я не знаю. Вот код:


<asp:UpdatePanel ID="UpdatePanel1" runat="server">
            <ContentTemplate>

<%--   Здесь вывод таблицы с данными из БД на страницу --%>

<asp:LinkButton ID="LinkButton1" runat="server" onclick="LinkButton1_Click">Add</asp:LinkButton>
<asp:ModalPopupExtender ID="LinkButton1_ModalPopupExtender" runat="server" 
                    DynamicServicePath="" Enabled="True" TargetControlID="LinkButton1" 
                    PopupControlID="ModalPanel" 
                    CancelControlID="CancelButton" BackgroundCssClass="modalBackground" 
                    DropShadow="True" PopupDragHandleControlID="modalTitle" Drag="True">
</asp:ModalPopupExtender>
<asp:Panel ID="ModalPanel" runat="server" CssClass="ModalPanel">
        <div id="modalTitle" runat="server" class="modalTitle" 
                style="cursor: move">
                <div id="divLeft" class="TitlebarLeft"  
                       hidefocus="hidefocus" runat="server" unselectable="on" 
                       contenteditable="false" enableviewstate="False">
                       Add Employee</div>
                <div id="divRight" runat="server" class="TitlebarRight">
                       <asp:Button ID="CloseBtn" runat="server" Text="x" Width="23px" Height="23px" />    
                </div>
        </div>
        <div id="ModalBody" runat="server" class="modalBody">
               <asp:Label ID="Label2" runat="server" Text="First Name:" Width="90px"></asp:Label>
               <asp:TextBox ID="FirstNameTbx" runat="server" MaxLength="8" 
                      style="position: relative" Width="108px"></asp:TextBox>
               <%-- asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server"
                      ControlToValidate="FirstNameTbx" ErrorMessage="Please Enter Employee First Name!"
                      SetFocusOnError="false" Display="None"></asp:RequiredFieldValidator --%>
               <br />
               <asp:Label ID="Label3" runat="server" Text="Last Name:" width="90px"></asp:Label>
               <asp:TextBox ID="LastNameTbx" runat="server" MaxLength="12" 
                       style="position: relative" width="108px"></asp:TextBox>
               <br />
               <asp:Label ID="Label4" runat="server" Text="Car:" width="90px"></asp:Label>
               <asp:DropDownList ID="DropDownList1" runat="server" 
                      DataSourceID="SqlDataSource2" DataTextField="CarName" DataValueField="ID" 
                      style="position: relative" width="115px">
               </asp:DropDownList>
               <br /> 
               <div align="right">
                      <asp:Button ID="OKButton" runat="server" Text="Save" width="54px" 
                             onclick="OKButton_Click" />
                      <asp:Button ID="CancelButton" runat="server" Text="Cancel" />
               </div>
        </div>
</asp:Panel>

</ContentTemplate>
</asp:UpdatePanel>


Если кто нибудь может что нибудь присоветовать я был бы признателен. Перерыл не мало примеров с Ajax ModulPopupExtender, но так и не нашел ничего по своей проблемме. На официальном сайте есть пример с перетаскиваемым окном. У них все работает замечательно. я вроде бы делаю все как там описано но у меня эффект возврата окна после перетаскивания сохраняется. не могу понять почему. И про отключение валидатора тоже пока не могу разобраться как его отключить после скрытия модального окна чтобы его Exception не блокировал работу в основном окне. Валидатор временно закоментировал.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.