<td colspan="3" style="background-color: white;"> <div id="divUserRoles" style="display: block; text-align: center;"> <br /> <asp:Label ID="lblUserRoles" runat="server" EnableViewState="False" Text="Select User to display his/her Roles" Width="475px" Font-Bold="True"></asp:Label><br /> <asp:ObjectDataSource ID="odsSelectUsers" runat="server" DeleteMethod="Delete" InsertMethod="Insert" OldValuesParameterFormatString="original_{0}" SelectMethod="GetMembers" SortParameterName="SortData" TypeName="MembershipUtilities.MembershipUserAndProfileODS"> <DeleteParameters> <asp:Parameter Name="UserName" Type="String" /> </DeleteParameters> <UpdateParameters> <asp:Parameter Name="userName" Type="String" /> <asp:Parameter Name="email" Type="String" /> <asp:Parameter Name="isLockedOut" Type="Boolean" /> <asp:Parameter Name="isApproved" Type="Boolean" /> <asp:Parameter Name="comment" Type="String" /> <asp:Parameter Name="lastActivityDate" Type="DateTime" /> <asp:Parameter Name="lastLoginDate" Type="DateTime" /> <asp:Parameter Name="fCID" Type="Int32" /> <asp:Parameter Name="fCWebAdminID" Type="Int32" /> <asp:Parameter Name="siteID" Type="Int32" /> <asp:Parameter Name="firstName" Type="String" /> <asp:Parameter Name="middleName" Type="String" /> <asp:Parameter Name="lastName" Type="String" /> <asp:Parameter Name="jobTitle" Type="String" /> <asp:Parameter Name="telephoneNum" Type="String" /> </UpdateParameters> <SelectParameters> <asp:ProfileParameter Name="sortData" PropertyName="SiteID" Type="String" /> <asp:Parameter DefaultValue="MasterAdmin" Name="ExcludeRole" Type="String" /> <asp:ProfileParameter Name="SiteID" PropertyName="SiteID" Type="Int32" /> </SelectParameters> <InsertParameters> <asp:Parameter Name="userName" Type="String" /> <asp:Parameter Name="isApproved" Type="Boolean" /> <asp:Parameter Name="comment" Type="String" /> <asp:Parameter Name="lastLockoutDate" Type="DateTime" /> <asp:Parameter Name="creationDate" Type="DateTime" /> <asp:Parameter Name="email" Type="String" /> <asp:Parameter Name="lastActivityDate" Type="DateTime" /> <asp:Parameter Name="providerName" Type="String" /> <asp:Parameter Name="isLockedOut" Type="Boolean" /> <asp:Parameter Name="lastLoginDate" Type="DateTime" /> <asp:Parameter Name="isOnline" Type="Boolean" /> <asp:Parameter Name="passwordQuestion" Type="String" /> <asp:Parameter Name="lastPasswordChangedDate" Type="DateTime" /> <asp:Parameter Name="password" Type="String" /> <asp:Parameter Name="passwordAnswer" Type="String" /> <asp:Parameter Name="fCID" Type="Int32" /> <asp:Parameter Name="fCWebAdminID" Type="Int32" /> <asp:Parameter Name="siteID" Type="Int32" /> <asp:Parameter Name="firstName" Type="String" /> <asp:Parameter Name="middleName" Type="String" /> <asp:Parameter Name="lastName" Type="String" /> <asp:Parameter Name="jobTitle" Type="String" /> <asp:Parameter Name="telephoneNum" Type="String" /> </InsertParameters> </asp:ObjectDataSource> <asp:DropDownList ID="ddlUsers" runat="server" AutoPostBack="True" ToolTip="Select User to show his/her Roles" Width="176px" DataSourceID="odsSelectUsers" DataTextField="UserName" DataValueField="UserName"> </asp:DropDownList> <br /> <br /> <asp:UpdatePanel ID="upUserRoles" UpdateMode="Always" runat="server"> <ContentTemplate> </div> </td> </tr> <asp:GridView ID="grdvwUserRoles" runat="server" AutoGenerateColumns="False" CellPadding="4" ForeColor="#333333" GridLines="None" AllowPaging="True" PageSize="5" OnRowCreated="grd_RowCreated" ToolTip="User Roles" Width="471px" DataKeyNames="RoleName" DataSourceID="odsUserRoles" OnRowDataBound="grdvwUserRoles_RowDataBound"> <FooterStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" /> <Columns> <asp:BoundField DataField="UserName" HeaderText="User Name" SortExpression="UserName" /> <asp:BoundField DataField="RoleName" HeaderText="Role" ReadOnly="True" SortExpression="RoleName" /> <asp:BoundField DataField="NumberOfUsersInRole" HeaderText="Total # of Users in Role" SortExpression="NumberOfUsersInRole" /> <asp:TemplateField> <ItemTemplate> <asp:LinkButton ID="lnkbtnRemoveRole" runat="server" CausesValidation="false" CommandName="RemRole" OnCommand="lnkbtnRemoveRole_Command" Text="Remove Role" /> </ItemTemplate> </asp:TemplateField> </Columns> <RowStyle BackColor="#F7F6F3" ForeColor="#333333" /> <EditRowStyle BackColor="#999999" /> <EmptyDataTemplate> <span style="color: #B0C4DE;">No Roles assigned for that user</span> </EmptyDataTemplate> <SelectedRowStyle BackColor="LightCyan" ForeColor="DarkBlue" Font-Bold="True" /> <PagerStyle BackColor="#284775" ForeColor="White" HorizontalAlign="Center" /> <HeaderStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" /> <AlternatingRowStyle BackColor="White" ForeColor="#284775" /> </asp:GridView> <asp:ObjectDataSource ID="odsUserRoles" runat="server" DeleteMethod="Delete" InsertMethod="Insert" OldValuesParameterFormatString="original_{0}" SelectMethod="GetRoles" TypeName="MembershipUtilities.RoleDataObjectForMP"> <DeleteParameters> <asp:Parameter Name="roleName" Type="String" /> </DeleteParameters> <SelectParameters> <asp:ControlParameter ControlID="ddlUsers" Name="userName" PropertyName="SelectedValue" Type="String" /> <asp:Parameter DefaultValue="true" Name="showOnlyAssignedRoles" Type="Boolean" /> </SelectParameters> <InsertParameters> <asp:Parameter Name="roleName" Type="String" /> </InsertParameters> </asp:ObjectDataSource> </ContentTemplate> </asp:UpdatePanel>This is code in RowDataBound for this grid:
protected void grdvwUserRoles_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow) { // DataRowView view = e.Row.DataItem as DataRowView; string RoleName = e.Row.Cells[1].Text; //view["RoleName"].ToString() ; string UserName = e.Row.Cells[0].Text; //view["UserName"].ToString() ; LinkButton link = e.Row.FindControl("lnkbtnRemoveRole") as LinkButton; if (link != null) { link.ToolTip = "Remove " + UserName + " from the " + RoleName + " role"; link.Attributes["onclick"] = "HideElement('" + this.lblProfStat.ClientID + "');var ch= confirm('Do you want to remove " + UserName + " from the " + RoleName + " role?' );if(ch==false) return false;else return true;"; e.Row.ID = "Row" + RoleName; link.CommandArgument = RoleName; } } }And here is the code in OnCommand
protected void lnkbtnRemoveRole_Command(object sender, CommandEventArgs e) { //int index = this.grdvwUsers.SelectedIndex; this.lblMsg.Text = ""; this.lblProfStat.Visible = false; string username; string RoleName; // LinkButton link = (LinkButton)sender; // string username = link.CommandArgument; //GridViewRow grdRow = (GridViewRow)link.Parent.Parent; if (e.CommandName.ToString() == "RemUser") { username = e.CommandArgument.ToString(); //this.HiddenField1.Value; RoleName = drpSelRole.SelectedItem.Value; } else { username = this.ddlUsers.SelectedValue; RoleName = e.CommandArgument.ToString() ; } try { Roles.RemoveUserFromRole(username, RoleName); // Re-bind users in role to GridView. this.tblProInfo.Visible = false; PopGrid(); this.grdvwUserRoles.DataBind(); } catch (Exception ex) { lblMsg.Text = "An exception of type " + ex.GetType().ToString() + " was encountered removing " + username + " from the role " + RoleName + Environment.NewLine + ex.Message; } }Both grids are pointing to the same method. It looks like that one of the clicks in never even doing anything because if I put a breakpoint it doesn't go there.