Фон: у меня есть приложение winForm, которое регистрирует пользователя в базе данных на основе пользовательского ввода, указанного в форме, автоматически генерирует случайный пароль и имя пользователя для пользователя и отправляет пользователю по электронной почте ссылку для получения приложения на основе выбранная маркетинговая компания.
Проблема: у меня есть список пакетов для заполнения с автопостбэком, установленным на true, но список пакетов заполняется, как только вы нажимаете на lbcarrier, и это не позволяет вам выбрать более одного оператора.
Есть ли у вас какие-либо идеи о том, как разрешить множественный выбор с включенной функцией обратной передачи?
Вот скриншот интерфейса:
код на default.aspx:
<td class="style1">
Carriers:</td>
<td bgcolor="#ffffff" class="style2">
<asp:ListBox AutoPostback="true" ID="lbCarriers" runat="server" Height="86px" Width="250px">
</asp:ListBox>
</td>
</tr>
<td class="style1">
Bundles:</td>
<td bgcolor="#ffffff" class="style2">
<asp:ListBox ID="bundles" runat="server" Height="86px" Width="250px">
</asp:ListBox>
</td>
</tr>
код на default.aspx.vb:
Protected Sub lbCarriers_SelectedIndexChanged(ByVal sender As Object, ByVal e As EventArgs) Handles lbCarriers.SelectedIndexChanged
Dim splt() As String
Dim ac1 As Array
bundles.Items.Clear()
Dim item As ListItem = lbCarriers.SelectedItem
splt = item.ToString().Split("|")
ac1 = proxy.GetContractingBundles("test", "test", Trim(splt(0)))
For Each Pitem In ac1
bundles.Items.Add(Trim(splt(2)) & " | " & Pitem.FormBundleName)
Next
End Sub
Спасибо, что посмотрели!
autopostback=false
и подключить свой собственный код javascript, чтобы вызвать обратную передачу, как только текстовое поле потеряет фокус. Я думаю, что это далеко не идеально с точки зрения пользовательского опыта. В качестве альтернативы вы можете использовать AJAX для заполнения следующего текстового поля, но это, конечно, добавляет много накладных расходов. Наконец, вы можете сделать так, чтобы ваше текстовое поле было триггером для панели обновления, которая включает следующее текстовое поле. - person Prescott   schedule 12.04.2011