1

最初にデフォルト値を取得するために編集可能な特定のノードに calculate 属性を使用しています。コントロールが最初にロードされると、その特定のノードの計算属性に応じてデフォルト値が設定されます。しかし、デフォルト値をオーバーライドすると、オーバーライドされた値がそのノードにバインドされません。この問題の解決策はありますか?

4

1 に答える 1

1

はい、計算対象のノードの値をユーザーが編集できるようにすることができます。このためxforms:bind、を明示的に追加readonly="false()"すると、自動的に指定したノードcalculateが読み取り専用になります。これを行う場合は、calculateユーザーがフィールドを編集した後にも実行されることに注意してください。そのため、ユーザーが入力した値を上書きしないように式を記述する必要があります。多くの場合、次のようなことを行いcalculate="if (. = '') then {some expression} else ."ます。ユーザーが何かを入力した場合に、ユーザーが入力した内容を上書きしないようにします。

于 2011-03-29T18:27:05.497 に答える