0

これは私のウェブページです:

<asp:FormView
  ID = "frmView1"
  DefaultMode = "Insert"
  runat = "server"
 >
  <ItemTemplate>
      Item Template
  </ItemTemplate>
  <InsertItemTemplate>
      Insert Item Template
  </InsertItemTemplate>    
</asp:FormView>

<asp:Button ID="btnSubmit" Text="Submit" runat="server" />

これはコードビハインドです:

Private Sub btnSubmit_Click(sender As Object, e As System.EventArgs) Handles btnSubmit.Click
    frmView1.ChangeMode(FormViewMode.ReadOnly)
End Sub

btnSubmit をクリックすると、フォームビューに何も表示されません! これはコード ビハインドでモードを変更する正しい方法ですか?

さらに、ChangeMode の代わりにコード ビハインドで次のように記述します。

frmView1.DefaultMode = FormViewMode.ReadOnly

forview は、InsertItemTemplate の内容を示しています。誰かがここで何が起こっているのか説明してもらえますか?

4

3 に答える 3

1

あなたのコードで

<asp:Button ID="btnSubmit" Text="Submit" runat="server" />

に変更する必要があります

<asp:Button ID="btnSubmit" Text="Submit" runat="server" command="ChangeModeToReadOnly" OnCommand="Button_Command" />

OnClickイベントを実装する代わりに、これを実装します

Protected Sub Button_Command(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.CommandEventArgs)
   Select Case e.CommandName
     Case "ChangeModeToReadOnly"
       frmView1.ChangeMode(FormViewMode.ReadOnly)
   End Select
End Sub
于 2012-05-01T10:48:41.410 に答える
0

次のDataBound関数を追加して試すことができます

protected void myFormView_DataBound(object sender, EventArgs e)
{
    frmView1.ChangeMode(FormViewMode.ReadOnly);
}

構文はC#

于 2012-04-12T18:03:38.687 に答える