i en asp:treeview finns det ett OnSelectedNodeChanged-event. Men om man klickar på samma menylänk som redan är vald så körs ju inte det eventet.
Finns det något sätt att göra egna events så att man kan göra ett event som körs även när du klickar på det menyalternativ som redan är valt? Om man kan overrida events på nåt sätt eller vad det heter?
Det lär bli knepigt. Visst kan du ärva Treeview, men det vore lättare att få den att hindra ett existerande event, snarare än att utöka. Du skulle kunna prova med att overrida RaisePostBackEvent, göra den valda noden till "ovald" och sedan låta base.RaisePostBackEvent sköta resten.
Hm, okej... men hur overridar man ett event? Jag hittade en sida som jag tror kanske kan vara det jag söker men jag förstår inte riktigt hur det fungerar...
Jag är lite korkad så jag hänger inte med riktigt här alltså... :) Vad är ett raisepostbackevent och hur kopplar man ihop det med en länk i min treeview? Problemet är att det är ett par textboxar vars värden hämtas/bearbetas när man klickar i treeviewn. Med andra ord, om jag ändrar värdet i någon av textboxarna men klickar på den nod som redan är vald i treeviewn så kan jag inte koppla det till ett event och det blir fel...
Den kör ju page_load när man klickar på noden en andra gång, men jag verkar aldrig kunna få fram att klicket kommer från min treeview!
1. Skapa en egen klass som ärver TreeView
2. Overrida RaisePostBackEvent i din klass (RaisePostBackEvent är en metod, inget event)
3. Deselecta den selectade noden i RaisePostBackEvent, och skicka sedan vidare till base.RaisePostBackEvent
280 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2