InsertCommandイベントでSPREAD以外のコントロール(例.TextBox)を変更できない

文書番号 : 23360     文書種別 : 使用方法     最終更新日 : 2007/01/26
文書を印刷する
対象製品
SPREAD for .NET 2.5J Web Forms Edition
詳細
SPREADはデフォルトでFpSpread1.EnableAjaxCallプロパティをTrueに設定し、行の追加など製品組込みの機能をポストバックではなくコールバックで処理します。
※コールバックで処理される製品組込みの機能とは行の追加/削除/ソート/フィルタリング、ページング、階層表示の展開/縮小です。

ページ全体を更新するポストバックとは異なり、コールバックではSPREADのみを更新します。このことによりサーバー側と送受信するデータ量を削減しWebアプリケーションのパフォーマンスが向上します。ただ、Webフォーム上のSPREAD以外のコントロールを更新することができませんので、例えば行の追加で発生するInsertCommandイベントの中でSPREAD以外のコントロール(例.TextBoxのTextプロパティ)を変更しても反映されません。

EnableAjaxCallをFalseに設定することで行の追加をはじめとする製品機能をポストバックで処理することができます。この場合はInsertCommandイベントでSPREAD以外のコントロールを変更できます。

下記サンプルコードです。
※EnableAjaxCallプロパティをFalseに設定し、InsertCommandイベントでTextBoxの値を変更します。

  Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
    If IsPostBack Then Return

    With FpSpread1.Sheets(0)
      .AllowInsert = True
      'SPREADのAJAXによる処理を無効化
      FpSpread1.EnableAjaxCall = False
    End With
  End Sub

  Protected Sub FpSpread1_InsertCommand(ByVal sender As Object, ByVal e As FarPoint.Web.Spread.SpreadCommandEventArgs) Handles FpSpread1.InsertCommand
    Dim sv As FarPoint.Web.Spread.SheetView
    sv = FpSpread1.ActiveSheetView
    sv.Cells(0, 0).Value = "aa"
    TextBox1.Text = "aa" TextBoxの値を変更

  End Sub
キーワード
問題 一般

この文書は、以前は次のFAQ IDで公開されていました : 9917