次の方法で共有


XmlForm.FormState プロパティ

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

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

構文

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

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

プロパティ値

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

解説

このメンバーには、制約なしでアクセスできます。

この型またはメンバーには、Microsoft InfoPath Filler または Web ブラウザーで開かれたフォームを実行中のコードからアクセスできます。

次のコードの例では、FormCode クラスの宣言セクション (InternalStartup メソッドの前) に、カウンターとして機能する状態変数を作成するための設計パターンを示しています。次のコードの例では、値を返す前に _Counter 変数が null 参照 (Visual Basic ではNothing ) であるかどうかを検証することで、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 名前空間