2017-05-02 20 views
0

私はGridViewのRowDataBoundイベントセットを持っています。コントロールの "visible"プロパティが "False"に設定されている場合、そのイベントは起動しますか?

他のコントロールのイベント(ボタンのOnClickイベントなど)によって引き起こされたポストバック中にGridViewの「Visible」プロパティを「False」に変更すると、GridViewのイベントはまだ起動しますか?ドキュメントは単にControl EventsLoadイベントの後とLoadCompleteイベントの前に発生すると述べているが、何のためには、私が見ることができることを与えられていないと何も表示されているので、これはケースやないだろう場合、私は判断できないASP.NET Page Life Cycle Overviewを見てみると

"Visible"プロパティがイベントの実行を変更するかどうかを指定します。

イベントがポストバックを引き起こすと、ポストバックを引き起こしたイベントが最初に実行され、後続のコントロールイベントが特定の順序で実行されないことが、間違っていると思います。ポストバックの前に "False"だった別のコントロールのコントロールのイベントが "可視"プロパティを "True"に変更した場合、表示されたコントロールは、サイクルがLoadCompleteに移動する前に発生したイベントに "追いつく"ページイベント。

私はまた、これらのコントロールのイベントはないだろうと、コントロールの「可視」プロパティは任意のイベント中に「偽」に設定されている場合、前Control Eventsのライフサイクル(PreInitInitInitCompletePreLoadLoad)で発生することを前提としています実行する。

これは間違いありませんか?私はこれを確認する公式の文書を見つけることができないようです。

答えて

0

Visibleプロパティの値は、ページとその内部のコントロールで発生するイベントの順序には影響しません。 Visibleがそのコントロールに対してfalseに設定されている場合に、コントロールのRenderイベントが呼び出されることはありません。
ライフサイクルのどのイベントで値を設定しても問題ありません。 (最初の子 制御火災の初期化とページの初期化は最後の発射)親コントロールに子コントロールから

  • ロード - -

    1. 初期親コントロールから:。

      シーケンスであります子コントロールに渡します。

    2. レンダリング - 親コントロールから子コントロールへ。
    3. アンロード - 子コントロールから親コントロールまで。

    制御用可視プロパティの値を変更することにより、イベントの発火には順序の変更はありません繰り返しになります。また、ここではキャッチアップのコンセプトはありませんが、ダイナミックコントロールの追加中に発生します。

  • 関連する問題