V Vinnaren Medlem sedan sep. 2005 833 inlägg Frågan 30 dec. 2007 11:48 #1 Har följande GridView:
<asp:GridView
ID="gvFile"
CssClass="adminFileList"
AlternatingRowStyle-CssClass="oddRow adminFileListRow"
AutoGenerateColumns="False"
RowStyle-CssClass="adminFileListRow"
EmptyDataText="Finns inga filer att visa"
EmptyDataRowStyle-CssClass="adminFileListEmpty"
runat="server"
OnRowCommand="gvFile_RowCommand"
OnDataBound="gvFile_DataBound">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:CheckBox ID="chkChecked" runat="server" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-CssClass="adminFileName" HeaderText="Filnamn">
<ItemTemplate>
<asp:LinkButton
ID="lbtnFile"
runat="server"
Text='<%# Eval("Name") %>'
ToolTip='<%# Eval("Name") %>' />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-CssClass="adminFileMeny">
<ItemTemplate>
<asp:ImageButton
ID="ibtnDelete"
CommandName="Delete"
toolTip="Ta bort"
CausesValidation="false"
CommandArgument='<%# Eval("Name") %>'
ImageUrl="~/bilder/filemanager/del.gif"
runat="server" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
När man klickar på delete ska den raden tas bort, men följande kod vill inte fungera:
protected void gvFile_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "Delete")
{
String lnkName = e.CommandArgument.ToString();
File.Delete(Path.Combine(GetFolderPath(), lnkName));
BindGrid();
}
}
Den går inte in i gvFile_RowCommand när man klickar på knappen ta bort.
Får inget felmeddelnde, utan det blir bara en postback.
Vad kan det vara för fel?
Tacksam för all hjälp :stud
CatZ Medlem sedan jan. 2002 2 440 inlägg <asp:ImageButton
ID="ibtnDelete"
CommandName="Delete"
[b]OnCommand="DeleteRow"[/b]
toolTip="Ta bort"
CausesValidation="false"
CommandArgument='<%# Eval("Name") %>'
ImageUrl="~/bilder/filemanager/del.gif"
runat="server" />
protected void ibtnDelete_Command(object sender, System.Web.UI.WebControls.CommandEventArgs e)
{
if (e.CommandName == "Delete")
{
String lnkName = e.CommandArgument.ToString();
File.Delete(Path.Combine(GetFolderPath(), lnkName));
BindGrid();
}
}
Det är inte gridviewn som orsakar ditt command i det här läget. Tror du måste ha det som en boundcolumn för att det ska registreras. Du får helt enkelt lägga till OnCommand till din imagebutton istället.
V Vinnaren Medlem sedan sep. 2005 833 inlägg tack, fungerade kanon :bire