J'utilise une grille de données dans mon format qui a 2 boutons, éditer et supprimer mais l'événement pour ceux-ci ne se déclenche pas. Où vais-je mal dans le code. J'ai couru le même code dans vb.net mais après la conversion en C#, ça ne marche pas. Plz aide.L'événement datagrid_itemcommand ne se déclenche pas
Y a-t-il d'autres changements que je dois faire lors de la conversion du code de vb.net en C# ?? Merci d'avance!
private void dgjob_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
try
{
switch (e.CommandName)
{
case "edit":
try
{
qry = "select ROLE from AV_USER_DETAILS where USER_ID='" + Session["user_name"] + "'";
cmd.Connection = con;
cmd.CommandText = qry;
con.Open();
if (Information.IsDBNull(cmd.ExecuteScalar()))
{
av_class.alert("User Not Permitted ", this);
con.Close();
return;
}
string st = cmd.ExecuteScalar().ToString();
if (!(st == "hod") & !(st == "Media_Planner"))
{
av_class.alert("User Not Permitted ", this);
con.Close();
return;
}
con.Close();
if (st == "hod")
{
goto mygo;
}
else
{
if (st == "Media_Planner")
{
goto mygo;
}
else
{
av_class.alert("User not Permitted", this);
return;
}
}
}
catch (Exception ex)
{
av_class.alert("Error .", this);
}
mygo:
ViewState["job_code"] = bll.RemoveSpecialChars(((Label)e.Item.FindControl("lbljobcode")).Text.Trim());
//4 tables changed av_creative_for_agency,av_datatable_one_for_ro,av_cmp_prd,av_datatable_two_for_ro used only once'
DataTable dat = new DataTable();
DAL o = new DAL();
dat = o.GetDataForGrid("select top 1 job_code from av_creative_for_agency where job_code='" + ViewState["job_code"] + "'");
if (dat.Rows.Count > 0)
{
av_class.alert("Ro's are Created for this !So can't be Edited", this);
return;
}
if (chk_job(ViewState["job_code"].ToString()) == false)
{
//alert("This Job already confirmed, so cannot be edited!", Me)
//Exit Sub
tb_campaign.Enabled = false;
}
retrive_from_DB(bll.RemoveSpecialChars(ViewState["job_code"].ToString()));
tabjob.Visible = true;
break;
Case "delete"
ViewState("job_code") = bll.RemoveSpecialChars(CType(e.Item.FindControl("lbljobcode"), Label).Text.Trim)
If chk_job(ViewState("job_code")) = False Then
alert("This Job already confirmed, so cannot be deleted!", Me)
Exit Sub
End If
If del_draft(ViewState("job_code")) = False Then
alert("Error in processing!", Me)
Exit Sub
End If
tabjob.Visible = False
alert("Draft deleted successfully!", Me)
}
}
catch (Exception ex)
{
}
}
ASPX CODING OF THE DATAGRID
<asp:datagrid id="dgjob" runat="server" CssClass="davpdgdatagrid"
PageSize="100" AutoGenerateColumns="False" ShowFooter="True"
BackColor="White" BorderColor="#CCCCCC" BorderStyle="None"
BorderWidth="1px" CellPadding="4" ForeColor="Black" GridLines="Horizontal"
HorizontalAlign="Center">
<AlternatingItemStyle CssClass="davpdgalt"></AlternatingItemStyle>
<ItemStyle CssClass="davpdgitem" HorizontalAlign="Center"></ItemStyle>
<FooterStyle BackColor="#CCCC99" ForeColor="Black" />
<HeaderStyle Wrap="False" HorizontalAlign="Center" CssClass="davpdgheader"
BackColor="#333333" Font-Bold="True" ForeColor="White"></HeaderStyle>
<Columns>
<asp:TemplateColumn>
<ItemTemplate>
<asp:Button id="btnedit" runat="server" CssClass="btn btn-primary" Text="Edit" CausesValidation="False"
CommandName="edit"></asp:Button>
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn>
<ItemTemplate>
<asp:Button id="btndelete" runat="server" CssClass="btn btn-primary" Text="Delete" CausesValidation="False"
CommandName="delete"></asp:Button>
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="Job Code">
<ItemTemplate>
<asp:Label id="lbljobcode" runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.job_code") %>'>
</asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox id="TextBox2" runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.job_code") %>'>
</asp:TextBox>
</EditItemTemplate>
</asp:TemplateColumn>
<asp:BoundColumn DataField="job_name" HeaderText="Job Name"></asp:BoundColumn>
<asp:BoundColumn DataField="job_date" HeaderText="Job Date"></asp:BoundColumn>
</Columns>
<PagerStyle BackColor="White" ForeColor="Black" HorizontalAlign="Right" Mode="NumericPages" />
<SelectedItemStyle BackColor="#CC3333" Font-Bold="True" ForeColor="White" />
</asp:datagrid>
Quelle est l'erreur? S'il vous plaît poser votre question en détail. –
C'est le problème principal, il ne montre aucune erreur. en cliquant sur le bouton modifier ou supprimer, il actualise la même page, l'événement pour ce bouton ne se déclenche pas. –
Hace vous avez essayé de débobiner? La publication est-elle activée pour le bouton de grille? –