Microsoft Trainer e Software Architect
Sviluppatore professionista dal 2001 con VB6, SQL 2000 e Access creando applicazioni gestionali di varia natura. Passando rapidamente a .NET, windows e web, ho poi espanso le mie esperienze su Compact Framework, SQL Server Mobile ed infine BizTalk Server.
Negli ultimi anni mi sono focalizzato sempre più sullo sviluppo distribuito ed enterprise conseguendo nel contempo le seguenti certificazioni:
Microsoft Certified Trainer (MCT)Microsoft MCPD .NET 3.5 Enterprise Applications DeveloperMicrosoft MCTS .NET 3.5 WCF Applications DevelopmentMicrosoft MCTS .NET 3.5 ASP.NET Applications DevelopmentMicrosoft MCTS .NET 3.5 ADO.NET Applications DevelopmentMicrosoft MCTS .NET 3.5 Windows Applications DevelopmentMicrosoft MCTS .NET 2.0 Distributed Applications DevelopmentMicrosoft MCP .NET
Ciao a tutti
In molti scenari di sviluppo ASP.NET capita di usare un controllo come gridview o listview in cui mettere dei template con dentro dei LinkButton:
<asp:LinkButton runat="server" ID="link1" Text="Clickme" PostBackUrl="~/Default2.aspx" />
Il post back viene invocato ovviamente sulla pagina di arrivo, senza però sapere quale dei “link1” generati per ogni riga della griglia sia davvero quello giusto. Come fare? Niente di più semplice ;)
Control postBackControl = PreviousPage.FindControl(Request.Form.Get("__EVENTTARGET")); c#
dim postBackControl = PreviousPage.FindControl(Request.Form.Get("__EVENTTARGET")) VB
unico inconveniente: i pulsanti non funzionano perché non usano l’eventtarget, ma poiché in Request c’è eventualmente il solo pulsante che ha fatto Postback, allora basta cercarlo per nome. Quindi potremmo fare un metodino così:
Control getPostBackControl() { string eventTarget = Request.Form.Get("__EVENTTARGET"); if (!string.IsNullOrEmpty(eventTarget)) return PreviousPage.FindControl(eventTarget); else { foreach (string name in Request.Params) { Control c = PreviousPage.FindControl(name); if (c is Button) return c; } return null; } }
Buon divertimento ;)
usa il SyntaxHighlighter per il codice.. viene meglio!
dotnetlombardia.org/.../test-syntaxhighlighter.aspx
adesso è più carino ;)