タイマーを介して更新され、UpdatePanel 内で期待どおりに動作するリストボックスがあります。
ただし、selectedindexchanged イベントを発生させることはできません。これは部分的なポストバックと関係があると思います。これを機能させるために何ができるか知っている人はいますか?
UpdatePanel の外に移動すると、正常に動作します。ただし、明らかに部分的なポストバックはできません。
<asp:UpdatePanel ID="UpdatePanel" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:Timer ID="Timer1" runat="server" OnTick="Timer1_Tick" Interval="500"></asp:Timer>
<asp:ListBox ID="ListBox_JobPositions" OnSelectedIndexChanged="ListBox_JobPositions_SelectedIndexChanged" runat="server" Height="750px" Width="300px" DataSourceID="sqlDataSource" DataTextField="Company" DataValueField="Pid"></asp:ListBox>
</ContentTemplate>
</asp:UpdatePanel>
アップデート:
以下の変更を試みましたが、タイマー イベントは引き続き機能しますが、selectedindexchanged イベントは機能しません。私はこれで迷子になっています。
<asp:UpdatePanel ID="UpdatePanel" runat="server" ChildrenAsTriggers="False" UpdateMode="Conditional">
<ContentTemplate>
<asp:Timer ID="Timer1" runat="server" OnTick="Timer1_Tick" Interval="500"></asp:Timer>
<asp:ListBox ID="ListBox_JobPositions" runat="server" Height="750px" Width="300px" DataSourceID="sqlDataSource" DataTextField="Company" DataValueField="Pid" OnSelectedIndexChanged="ListBox_JobPositions_SelectedIndexChanged" AutoPostBack="True"></asp:ListBox>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="Timer1" />
</Triggers>
リストボックスが UpdatePanel 内にある場合は発生しないが、そうでない場合は機能するイベントを次に示します。
protected void ListBox_JobPositions_SelectedIndexChanged(object sender, EventArgs e)
{
Response.Write("test");
}