1

ページの 1 つで問題が発生しています。データベーステーブルに新しい行を入力するために使用するページに FormView コントロールがあり、同じデータベーステーブルから行を更新/削除するために同じページに GridView コントロールがあります。

FormView コントロールには、データベースでスローされる入力を検証するバリデーターがあり、行を編集しようとすると GridView に干渉するようです。編集を保存しようとすると、FormView の検証コントロールが起動し、テキスト ボックスの入力が空白であるためエラーが発生し、GridView は変更されたテーブル データを保存できません。

おそらく目に見える例が役立つでしょう:

スクリーンショット

これらのコントロールをさまざまなフォームに入れ、あるフォームの送信が他のフォームで何も起動しないことを期待していましたが、ページに複数のフォームを含めることはできないというエラーが表示されましたrunat="server"。私が知る限り、必要です。

どうすればこれを回避できますか?

ありがとう。

4

3 に答える 3

1

1 つだけ持つことができますForm

and の代わりにdifferentValidationGroupsを使用してください。FormViewGridView

http://msdn.microsoft.com/en-us/library/ms227424(v=vs.100).aspx

于 2012-11-14T21:25:59.207 に答える
0

はい、これは Web フォームの既知の制限 (機能?) です。タグ付きのフォームは 1 つしか持てませんrunat="server"

シナリオでは、ValidationGroup名前を使用して検証をグループ化できるため、同じ検証のコントロールがトリガーされたときに「同様の」検証のみが実行されます。

于 2012-11-14T21:26:51.607 に答える
0

私がしたことは、ページへのポストバックとしてコード化された 2 つのフォームがあり、Page.Load のポストバック変数を自分で解析したことです。変?はい。動作しますか?はい。

于 2012-11-14T21:29:12.393 に答える