ASPX で EXT.NET を使用しています。私はこれまでこの問題を抱えたことはありません。イベント トリガーがあると、ページはすべてのコードを再実行します (ただし、実際にはページを「リロード」しません)。私が見る限り、これは他のすべてのページで発生しているわけではありません。コード例:
protected void gSelectApplied(object sender,EventArgs e)
{
Ext.Net.ComboBox box = (Ext.Net.ComboBox)sender;
string name = box.ID;
switch (name)
{
case "gPreviousApplied":
{
gPreviousAppliedfunded.Hidden = box.SelectedItem.Value.ToString() == "Yes"
? false
: true;
break;
}
case "gPreviousAppliedfunded":
{
gPreviousApplied.Hidden = box.SelectedItem.Value.ToString() == "Yes"
? false
: true;
break;
}
}
}
これは実行され、ページ上の要素を非表示にすることになっています。ただし、これは発生しません。これは、一時的に非表示を true に設定し (表示されない)、その後リセットされるためです。一般ページにブレークポイントを設定すると、イベントがトリガーされ、イベント コード自体がトリガーされると、ブレークポイントにヒットします。
フロントエンドは次のようになります。
<ext:FormPanel ID="Sec5" runat="server" AutoHeight="true" BodyBorder="false"
Layout="FormLayout" LabelAlign="Right" LabelPad="25" LabelWidth="220" Cls="blue"
PaddingSummary="5px 0px 5px 115px" Border="false" BaseCls=".uData" Hidden="false">
<Items>
<ext:ComboBox FieldLabel="someField" ID="gPreviousApplied"
runat="server" OnDirectSelect="gSelectApplied">
<Items>
<ext:ListItem Text="Yes" />
<ext:ListItem Text="No" />
</Items>
</ext:ComboBox>
<ext:ComboBox FieldLabel="something" ID="gPreviousAppliedfunded"
runat="server">
<Items>
<ext:ListItem Text="Yes" />
<ext:ListItem Text="No" />
</Items>
</ext:ComboBox>
<ext:ComboBox FieldLabel="somethingelse" ID="gPreviousApplied"
runat="server">
<Items>
<ext:ListItem Text="Yes" />
<ext:ListItem Text="No" />
</Items>
</ext:ComboBox>
</Items>
</ext:FormPanel>
</Items>
</ext:Panel>