RepeaterのOnItemCommandイベント
2005年 10月 01日
だいぶ、間が空いてしまった。
昨日まで発生していた、RepeaterのOnItemCommandイベントが
発生しなくなって困った。LinkButtonのイベントは発生するのに。
詳しい現象はこんなかんじ。
というaspxファイルがあって、デザイン上では、イベントを設定してません。
repeaterのOnItemCommand属性でイベント発生時に実行するメソッドを指定し
てます。
Page_OnLoadで、セッションに保存していたDataSourceを再設定してしまってい
ました。リクエストが発生したとき、クリックのイベントより先にDataSerce
が再設定される。よくわからないけどこれが原因みたい。
この状態だと、Buttonのイベントは発生しない。LinkButtonのイベントは発生
する。
どうも附におちないけど、むやみに、DataSourceの設定とDataBindするなって
ことか?
リクエストが発生したとき、DataSourceが破棄されていたので、セッションに
保存するようにしてたんだけど。
昨日まで発生していた、RepeaterのOnItemCommandイベントが
発生しなくなって困った。LinkButtonのイベントは発生するのに。
詳しい現象はこんなかんじ。
<asp:repeater id="repeater1" runat="server" OnItemCommand="repeater1_ItemCommand">
略
<asp:Button CommandName="edit" Text="編集" Runat="server" ID="btnEdit" />
<asp:LinkButton CommandName="detail" id="link1" runat="server" Text="">
略
というaspxファイルがあって、デザイン上では、イベントを設定してません。
repeaterのOnItemCommand属性でイベント発生時に実行するメソッドを指定し
てます。
Page_OnLoadで、セッションに保存していたDataSourceを再設定してしまってい
ました。リクエストが発生したとき、クリックのイベントより先にDataSerce
が再設定される。よくわからないけどこれが原因みたい。
repeater1.DataSource = Session["dataview"];
repeater1.DataBind();
この状態だと、Buttonのイベントは発生しない。LinkButtonのイベントは発生
する。
どうも附におちないけど、むやみに、DataSourceの設定とDataBindするなって
ことか?
リクエストが発生したとき、DataSourceが破棄されていたので、セッションに
保存するようにしてたんだけど。
by smeg_head
| 2005-10-01 16:54
| dotnet