c# - specified argument was out of the range of valid values. parameter name index -
while working on legacy asp.net webforms application stumbled following error: "specified argument out of range of valid values. parameter name index". have tabcontainer gridview filled users fullnames , 2 buttonfield (edit & view). when click on view rowcommand, 5 more tabs generated user information ad. works fine until go user tab , click on user name. how can make page remove new 5 tabs created first user , add 5 new ones new user ? thank you
<ajax:toolkitscriptmanager id="toolkitscriptmanager1" runat="server"> </ajax:toolkitscriptmanager> <ajax:tabcontainer id="tabcontainer1" oninit="tabcontainer1_init" runat="server" activetabindex = "0" scrollbars="vertical"> <ajax:tabpanel runat="server" headertext="users" id="tabpanel1"> <contenttemplate> <asp:gridview id="gridview1" runat="server" autogeneratecolumns="false" width= "850px" height = "650px" onrowcommand = "gridview1_rowcommand" > <columns> <asp:boundfield datafield="name" headertext="name"/> <asp:boundfield datafield="samaccountname" headertext="username" /> <asp:boundfield datafield="emailaddress" headertext="emailaddress" /> <asp:buttonfield commandname = "view" imageurl ="~/resources/images/view.gif" buttontype = "image"/> <asp:buttonfield commandname = "edit" imageurl ="~/resources/images/edit.gif" buttontype = "image"/> </columns> </asp:gridview> <triggers> <asp:asyncpostbacktrigger controlid="tabcontainer1" eventname="activetabchanged" /> </triggers> </contenttemplate> </ajax:tabpanel> </ajax:tabcontainer> protected void page_load(object sender, eventargs e) { if (!ispostback) { mydata(); } } public void mydata() { t = regex.replace(ldap, @"cn=[^,]*,* *", "", regexoptions.cultureinvariant | regexoptions.ignorecase); try { list<string> allusers = new list<string>(); principalcontext ctx = new principalcontext(contexttype.domain, "idea.com", t); userprincipal usr = new userprincipal(ctx); // create principalsearcher object. principalsearcher ps = new principalsearcher(usr); principalsearchresult<principal> fr = ps.findall(); gridview1.datasource = fr; gridview1.databind(); } catch (exception ex) { } } protected void gridview1_rowcommand(object sender, gridviewcommandeventargs e) { int row = int.parse(e.commandargument.tostring()); item = gridview1.rows[row].cells[1].text; var username = gridview1.rows[row].cells[0].text; string firstname = username.remove(username.indexof(".")); directoryentry de = new directoryentry(); de.path = "ldap://idea.com"; directorysearcher objadsearcher = new directorysearcher(de); de.authenticationtype = authenticationtypes.secure; objadsearcher.searchroot = de; objadsearcher.filter = "(samaccountname=" + item + ")"; searchresult results = objadsearcher.findone(); if (e.commandname == "view") { if (results.tostring() != "") {int flags = convert.toint32(results.properties["useraccountcontrol"][0].tostring()); if (convert.toboolean(flags & 0x0002)){response.write("<script> alert ('" + "account disabled more 90 days" + "') </script>"); else {windowsidentity wi = new windowsidentity(item); foreach (identityreference group in wi.groups) { try { result1.add(group.translate(typeof(ntaccount)).tostring()); result1.sort(); } catch (exception ex) { } } string tabid; ajaxcontroltoolkit.tabpanel apptab = new ajaxcontroltoolkit.tabpanel(); apptab.headertext = firstname + " " + "application"; apptab.id = string.format("tab{0}{1}",suffix, "tab1"); ajaxcontroltoolkit.tabpanel sharedtab = new ajaxcontroltoolkit.tabpanel(); sharedtab.headertext = firstname + " " + "sharedcommon"; sharedtab.id = string .format ("tab{0}{1}",suffix ,"tab2" );ajaxcontroltoolkit.tabpanel grouptab = new ajaxcontroltoolkit.tabpanel();grouptab.headertext = firstname + " " + "internet/ras"; grouptab.id = string.format("tab{0}{1}",suffix, "tab3"); ajaxcontroltoolkit.tabpanel idtab = new ajaxcontroltoolkit.tabpanel();idtab.headertext = firstname + " " + "info"; idtab.id = string.format("tab{0}{1}",suffix, "tab4"); tabcontainer1.tabs.add(grouptab); tabcontainer1.tabs.add(apptab); tabcontainer1.tabs.add(sharedtab); tabcontainer1.tabs.add(idtab);}}}
Comments
Post a Comment