0

特定のタイプの新しいエンティティの作成と既存のエンティティの編集の両方に使用されるダイアログにマットステッパーを使用しています。ステッパーは 4 つのステップで構成されています。最初の 3 つのステップのそれぞれには、データを入力するためのフォームが含まれていますが、最後のステップは、最初の 3 つのステップで入力されたデータの要約/概要のみです。

ユーザーが3つのステップすべてで有効なデータを入力した場合にのみ、ユーザーが最後のステップに進むことを許可したい. これを行うために、linear属性をステッパーに追加して、ユーザーが各ステップを実行するように強制しました。ユーザーがダイアログを介して新しいエンティティを作成している場合、これは完全に正常に機能します。ただし、既存のエンティティを編集する場合、たとえば少なくともステップ 2 をクリックする前に直接ステップ 3 に進むことはできません。編集モードでダイアログを開くと、プログラムでステップのすべてのフィールドに次のデータを入力します。既存のエンティティであるため、現在表示されているステップに有効なデータが入力されている限り、ユーザーが任意のステップに直接移動できるようにしたいと考えています。問題を示すスタックブリッツは次のとおり です。

すべてのフィールドがプログラムによって既に入力されているにもかかわらず、たとえば、前のステップをクリックする前にステップ 3 または 4 に直接進むことはできません。

linearこれを解決するための最初の試みは、ダイアログが編集モードで開かれているときに属性を削除することでした。これには望ましい効果がありますが、ユーザーがステップの一部のフィールドをクリアしてから直接最後のステップに進むこともできますが、これは許可したくありません。これは、前のステップがすべて実行されている場合にのみ、最後のステップに到達できる必要があるためです。有効なデータで完全に満たされています。

マットステッパーでこの動作を実現する方法はありますか? 問題が明確でない場合はお知らせください。詳しく説明できるよう最善を尽くします。

4

1 に答える 1