• Bill Shatner is 72 vandaag

    Bill Shatner is 72 vandaag.

  • Mysterie opgelost. Het event voor

    Mysterie opgelost. Het event voor doubleclick was gekoppeld aan dat voor File | Exit. Slim.

  • Bah, selected item vinden in

    Bah, selected item vinden in een listview bij een click. Hoe? Geen idee. Ik had er in Delphi in de tijd ook al last mee, ik denk dat ik toen iets in de zin van

    ListView1.Selected:=ListView1.GetItemAt(ListView1.ScreenToClient(mouse.CursorPos).X,ListView1.ScreenToClient(mouse.CursorPos).Y);

    gedaan had. Brr, inderdaad.

    Het lijkt nochtans redelijk simpel: dubbelklik op een listview lvMain, en dan weet ik normaal gezien via lvMain.FocusedItem wat of ik geklikt heb, juist? Wel, fout dus. Het programma stopt gewoon. Geen fout, gewoon exit. Zucht.

  • Zonet op tv gezien. Um

    Zonet op tv gezien. Um Qasr was zogezegd gisteren al ingenomen en onder controle, maar dat blijkt toch niet helemaal het geval te zijn: “some fanatics will remove their uniforms and fight us in civilian clothes”. Ja, da’s dan guerilla-oorlog zeker?

    En, even tellen, één irakees op een fiets in de verte, twee irakezen elk in een camion, waarvan één breed glimlachend “Bush OK. OK Bush” intoneert; jawel, de “geallieerden” worden duidelijk met open armen ontvangen. Tja, ’t is niet meteen Oostenrijk 1938 van enthousiasme natuurlijk.

  • Ho boy, it’s going to

    Ho boy, it’s going to be one of those mornings… Zelie wil absoluut op de computer spelen, maar geen vijf minuten hetzelfde. En Louis weet niet wat hij wil, behalve dan ambetant zijn. En blokjes verspreiden over heel het huis.

  • De listview werkt, voor boeken

    De listview werkt, voor boeken toch, Midsomer Murders is gedaan, en ik moet om 7 uur op voor de kinderen. Naar bed!

  • Whee! Da’s dus iets dat

    Whee! Da’s dus iets dat ik al sinds vorig jaar voor mij uit schuif, dat mij al die tijd heeft tegengestoken in die Delphi-applicatie, en nu opgelost is!

    Alla. En dan nu die listview.

  • Treeview is gedaan, nu de

    Treeview is gedaan, nu de listview bovenaan rechts. Enfin, ik zeg dat de treeview gedaan is, maar da’s eigenlijk niet waar: als ik een authorNode uitklap, dan toon ik alle boeken van die auteur. En dat zou niet mogen: ik zou eigenlijk alleen maar de boeken van die auteur in die rol mogen tonen.

    Dus als ik op Isaac Asimov-als-editor klik, wil ik eigenlijk alleen maar de vier boeken die ik van hem heb als editor, en niet de 23 die ik heb als auteur. Harumf. En nu werkt dat allemaal met één eenvoudig parametertje van deze node. Hij zou dus een node naar boven moeten, en de queryString aanpassen, bah. Ik heb eigenlijk geen zin om er naar te kijken, maar in het kader van meer dan 85% maar doen zeker?

  • Thé Lau! Op de Pop

    Thé Lau! Op de Pop Poll op Canvas! Ik heb die mens live gezien met The Scene op Torhout, en live op zijn alleen akoestisch in één of ander cultureel centrum, en allebei magnifiek goed.

  • Hm. ’t Was niet eens

    Hm. ’t Was niet eens zo moeilijk: het is een kwestie van veiligheid, dat TreeDataNode van TreeNode en TreeNode van MarshalByRefObject inherited is, en dat daarvoor expliciete get en set methods moeten gemaakt worden.

    Dus ’t was een zaak van een intern id en een extern ID te hebben, een accessor te maken, en Bob’s yer uncle:

    private class TreeDataNode : TreeNode
    {
        private
    int id;
        public int ID 
        {
            get { return id; }
            set { id=value; }
        }

  • Grr! Nu heb ik het

    Grr! Nu heb ik het weer van die marshal-by-referer-histories. En deze keer kan ik er niet rond, ik heb het ID echt nodig:

    if (thisNode.ID!=0) { queryString+=thisNode.ID.ToString(); }

    Damned. Ik zal moeten zoeken.

  • Oops, vergeten dat ik TreeDataNodes

    Oops, vergeten dat ik TreeDataNodes moest aanmaken, geen eenvoudige TreeNodes!

    Hopsadaisy:

    TreeDataNode tn=new TreeDataNode(
        dr.GetString(dr.GetOrdinal(nameField))+ 
        ” (“+dr.GetInt32(dr.GetOrdinal(countField))+”)”,
        expandedNode,
        dr.GetInt32(dr.GetOrdinal(keyField)));
    thisNode.Nodes.Add(tn);

    Oche, ik weet wel dat het allemaan geen raketwetenschap is, maar ik doe het echt zó graag, programmeren. Iets maken van niets, en ondertussen nieuwe dingen bijleren–is er iets wijzer?

  • Echt wel een gemak, die

    Echt wel een gemak, die DataReader in C#. Gaat enkel vooruit, doet niets anders dan data lezen, maar: verblindend snel, en bijzonder eenvoudig:

    cnnBooks.Open();
    OleDbCommand getData=new
    OleDbCommand(queryString,cnnBooks);
    OleDbDataReader dr=getData.ExecuteReader();

    while
    (dr.Read())
    {

        thisNode.Nodes.Add(
            dr.GetString(dr.GetOrdinal(nameField))+ 
            ” (“+dr.GetInt32(dr.GetOrdinal(countField))+”)”);
    }

    dr.Close();
    cnnBooks.Close();

    Connectie open zetten, commando aanmaken en instantiëren, commando uitvoeren en in de reader steken, over de rijen van de reader lopen en nodes in de treeview aanmaken, datareader sluiten, connectie sluiten. Easy as π:

  • De eerste aflevering van Monk

    De eerste aflevering van Monk gezien op bbc2. Echt wel goed.

  • Turkey insists on invading northern

    Turkey insists on invading northern Iraq

    Turkish Foreign Minister Abdullah Gul says Turkey will invade northern Iraq to stop an influx of refugees and to prevent what he calls “terrorist activities.” The latter is Turkish for anything a Kurd does. The US has opposed the move.

    The Kurds have proven themselves to be friends of the US in this conflict. Turkey has not. Why shouldn’t the US tell Turkey to go stuff it? It’s amazing what nations have been forced to keep up with from Turkey, a country that has been guilty of more genocides than any other nation in history, just because they have a lucky strategic location. Now they want to join the west, and join EU, and it’s time to make them crawl a bit and start behaving like a civilised nation.

    [Secular Blasphemy]