次の方法で共有


XmlForm.FormState プロパティ

サーバー上の複数のセッションにわたって状態情報を維持するためにブラウザ対応のフォームで使用できる、System.Collections.IDictionary 型のプロパティ バッグへの参照を取得します。

名前空間: Microsoft.Office.InfoPath
アセンブリ: Microsoft.Office.InfoPath (microsoft.office.infopath.dll 内)

構文

'宣言
Public MustOverride ReadOnly Property FormState As IDictionary
'使用
Dim instance As XmlForm
Dim value As IDictionary

value = instance.FormState
public abstract IDictionary FormState { get; }

プロパティ値

フォーム コードの宣言セクションに定義されたユーザー定義の状態変数を含んでいる IDictionary

コメント

このメンバは制限なしでアクセスできます。

この型またはメンバは、Microsoft Office InfoPath 2007 または Web ブラウザで開いているフォームで実行されているコードからのみアクセスできます。

次の例では、FormCode クラスの宣言セクション (InternalStartup メソッドの前) に、カウンタとして機能する状態変数を作成するための設計パターンを示しています。この例では、値を返す前に _Counter 変数が null であるかどうかを確認することで、FormState 配列が初期化されていない場合のエラーを回避しています。

private int _Counter
{
   get
   {
      if(FormState["_Counter"] != null)
      {
         return (int) FormState["_Counter"];
      }
      else
      {
         return 0;
      }
   }
   set
   {
      FormState["_Counter"] = value;
   }
}
Private Property _Counter As Integer
   Get
      If(FormState("_Counter") != null) Then
         _Counter = DirectCast(FormState("_Counter"), Integer)
      Else
         _Counter = 0
      End If
   End Get
   Set
      FormState("_Counter") = value
   End Set
End Property

関連項目

参照

XmlForm クラス
XmlForm のメンバ
Microsoft.Office.InfoPath 名前空間