När jag sorterar min datagrid så vill jag få fram vilken kolumn jag sorterade (alltså kolumnens index) i item_command-eventet. Alltså typ samma sak som när man tar fram vilken rad man är på:
e.Item.ItemIndex
Fast jag vill då få fram vilken kolumn jag sorterade...
Jag har en lösning men den är ju riktigt usel så jag skulle gärna ha en bättre, men så här har jag gjort nu för att kunna lägga in en pil som visar i vilken kolumn man sorterar och åt vilket håll:
När jag trycker på länken som sorterar datagriden körs item command-eventet först. Där hämtar jag den linkbutton (det är en sådan man trycker på i headern har jag klurat ut) som körde eventet och plockar ut link-buttonens uniqueID:
((LinkButton)e.CommandSource).UniqueID
I kolumn 1 har den nämligen ett uniqueID som är nånting_0, i nästa kolumn har den id 1 osv. Detta id lägger jag in i en publik variabel som jag använder i min ortCommandEvent som ju körs efter itemcommand.
I sortCommandEvent får jag nu leta upp cellen där min linkbutton finns och med hjälp av det uniqueID som jag sparat undan kan jag bluffa mig till rätt ställe:
HeaderTxtLB är nu den linkbutton i den kolumn som jag tryckte på när jag sorterade min datagrid. Så nu kan jag lägga in en bild med en bil som visar att det är den här kolumnen som är sorterad och åt vilket håll:
Ingen som kan? ;) Kanske inte går? Ta ett exempel som borde vara superlätt, om jag klickar på en linkbutton som finns exempelvis i 3:e kolumnen från vänster i en datagrid... hur får jag fram kolumnens nummer dynamiskt?