When you add command field for select
<columns>
...
<asp:commandfield showselectbutton="true" />
</columns>
OR
button with command name "Select"
<columns>
....
<asp:linkbutton id="lbtnServerSelect" runat="server" text="Select" commandname="Select" />
</columns>
then Gridview_SelectedIndexChanging event get called. You get newly selected index by
e.NewSelectedIndex;
Refer this
http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.gridview.selectedindexchanging%28v=vs.110%29.aspx
Or you can catch event in rowCommand also as you did
protected void GrdCompany_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "Select")
{
}
}