DataGrid ItemCommand???

Discussion in 'ASP .Net' started by Guest, Oct 22, 2004.

  1. Guest

    Guest Guest

    hi all,
    i am having problem with using itemcommand of datagrid by way of asp:image
    button.
    i have put an image button in a datagrid item template and have set
    CommandName="DeleteRecord" and have coded a switch to handle the event.
    I have done this vb.net and it works fine..put in c# i can not catch the
    item command..i stepped into code
    via debug mode.. its just doest enter the dgrCaseType_ItemCommand...
    I AM TOTALLY CLULESS.....WHAT AM I MISSING...
    PLZ see code below.........

    <asp:DataGrid ID="dgrCaseType" Runat="server" AutoGenerateColumns="False"
    Width="100%" BorderWidth="2"
    BorderColor="#ffffff" HeaderStyle-HorizontalAlign="Center"
    AllowSorting="True" EnableViewState="True">
    <AlternatingItemStyle CssClass="bg-ltgray"></AlternatingItemStyle>
    <Columns>
    <asp:BoundColumn HeaderText="Default Owner"
    HeaderStyle-CssClass="menu_gray" DataField="CSPersonnell"
    HeaderStyle-Width="150"></asp:BoundColumn>
    <asp:TemplateColumn HeaderStyle-CssClass="menu_gray"
    HeaderStyle-Width="150" HeaderText="Options"
    ItemStyle-HorizontalAlign="Center">
    <ItemTemplate>
    <asp:ImageButton ID="imgEdit" CommandName="EditRecord"
    ImageUrl="../../Images/icon_edit.gif"
    AlternateText="Edit" Runat="server"
    Height="16" Width="16"
    EnableViewState="False"></asp:ImageButton>

    <asp:ImageButton ID="imgDelete" CommandName="DeleteRecord"
    ImageUrl="../../Images/icon_trash.gif"
    AlternateText="Delete" Runat="server"
    Height="16" Width="16"
    EnableViewState="False"></asp:ImageButton>
    </ItemTemplate>
    </asp:TemplateColumn>

    </Columns>
    </asp:DataGrid>

    Then I have coded the following:

    protected System.Web.UI.WebControls.DataGrid dgrCaseType;

    protected void dgrCaseType_ItemCommand(object source,
    System.Web.UI.WebControls.DataGridCommandEventArgs e)
    {
    switch(e.CommandName)
    {
    case "EditRecord":
    string s=e.Item.Cells[7].Text;
    break;
    case "DeleteRecord":

    break;
    }
    }

    private void InitializeComponent()
    {
    this.Load += new System.EventHandler(this.Page_Load);
    this.dgrCaseType.ItemDataBound += new
    System.Web.UI.WebControls.DataGridItemEventHandler(this.dgrCaseType_ItemDataBound);
    }

    Thanks in advance..
    -Sami.
     
    Guest, Oct 22, 2004
    #1
    1. Advertisements

  2. Guest

    Teemu Keiski Guest

    You need to wire the event handler for the DataGrid's ItemCommand event? Do
    yiou have it done in code-behind in InitializeComponent method? (It looks
    like dgrCaseType.ItemCommand += new
    DataGridCommandEventHandler(method_name);..., which seems to be missing
    there)

    If you don't have it code-behind, you can wiree it on aspx on DataGrid's
    declaration:

    .... OnItemCommand="dgrCaseType_ItemCommand" ...

    or make up similar wiring in InitializeComponent as for other events.


    --
    Teemu Keiski
    MCP, Microsoft MVP (ASP.NET), AspInsiders member
    ASP.NET Forum Moderator, AspAlliance Columnist
    http://blogs.aspadvice.com/joteke



     
    Teemu Keiski, Oct 22, 2004
    #2
    1. Advertisements

  3. Guest

    Karl Seguin Guest

    first off, you aren't hooking up the ItemCommand event...you are hooking up
    the ItemDataBound however...you need this:

    this.dgrCaseType.ItemCommand+=new
    DataGridCommandEventHandler(dgrCaseType_ItemCommand);

    in your InitializeComponent (or page_load).


    Secondly, assuming you have the above, you also need to make sure that you
    aren't rebinding on postback, if so you'll lose ur event...

    Karl

    --
    MY ASP.Net tutorials
    http://www.openmymind.net/


     
    Karl Seguin, Oct 22, 2004
    #3
  4. Guest

    Rahim

    Joined:
    Mar 10, 2008
    Messages:
    1
    Likes Received:
    0
    DataGrid.ItemCommand

    Hi all,
    I have a datagrid in which a link button is there.The problem is after clicking the link button it takes long time to fire the event. But the appliaction have same features in other page where it works fine. Can you suggest what to do. I have reset the iis-server too.
     
    Rahim, Mar 10, 2008
    #4
    1. Advertisements

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.