Question

J'utilise ImageButtons en place de linkbuttons dans un FormView pour émettre Nouveau / Modifier / Supprimer / Annuler commandes, mais ils ne semblent pas avoir un effet sur le FormView.

Les ImageButtons causeront un postback mais le mode FormView ne change pas du mode actuel.

Je suis sûr que les ImageButtons travaillaient à un moment donné, mais je suis occupé avec d'autres pages pendant un certain temps. La seule chose qui a changé entre maintenant et quelques correctifs que j'ai installé dans Visual Studio.

Je n'ai pas été en mesure de trouver toute information relative à cette question autre que ceci: http://www.codeproject.com/KB/webforms/TamingTheFormView.aspx Dans cet article, il y a une méthode onclick pour un ImageButton qui est utilisé pour changer le mode FormView.

Serait-ce la seule façon d'utiliser ImageButtons au lieu de linkbuttons dans un FormView?

Voici quelques fragments de code:

<asp:FormView ID="CourseFormView" runat="server" DataKeyNames="CourseCode" 
    DataSourceID="CourseSqlDataSource" ondatabound="CourseFormView_DataBound">
    <ItemTemplate>
        <table>...</table>
        <asp:ImageButton ID="EditCourseImageButton" CssClass="image_button"
            runat="server" CommandName="Edit"
            ImageUrl="~/images/icons/pencil.png" />
     </ItemTemplate>
</asp:FormView>

Codebehind:

    protected void Page_Load(object sender, EventArgs e)
    {
        if (Request.QueryString["code"] == null ||
                Request.QueryString["code"] == "")
        {
            CourseFormView.ChangeMode(FormViewMode.Insert);
            CourseCodeTitleLabel.Visible = false;
            CourseTitleTitleLabel.Text = "Add a new course...";
            SchedulePanel.Visible = false;
        }

    }

Il n'y a pas d'autre code pour le traitement des boutons. J'avais créé des gestionnaires d'événements vides pour le FormView pour voir ce qui se passait - ModeChanging, ModeChanged et ItemCommand. Aucun d'entre eux étaient appelés quand je clique sur le ImageButton, mais tout a bien fonctionné si je un LinkButton.

Je ne fais rien de compliqué - Je veux juste le FormView pour répondre aux commandes ImageButton de base

.
Était-ce utile?

La solution 2

La question était que j'appelle Page.DataBind () dans ma page principale. Je ne sais pas comment cela interfère, mais je l'ai enlevé l'appel et recodé la page il est donc pas nécessaire.

Autres conseils

Pour tester, la forme doit avoir une commande ou d'un événement ItemCommand qui se déclenche lorsque la commande est cliqué ... attacher et test pour voir qu'il se déclenche et que le e.CommandName est modifier ... ( Je pense qu'il ya une commande param, mais ne suis pas sûr à 100%).

Cela au moins nous dire si ce travail est ... si ce feux, vous pouvez au moins changer à modifier par programmation le mode.

HTH.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top