in

DĂ© specialist in .NET trainingen en consultancy

Jo-wen Mei

juni 2007 - Posts

  • WrapPanel en ScrollViewer combinatie

    Een WrapPanel probeert automagisch alle controls zichtbaar te krijgen in het window. Mocht dat niet lukken, kun je deze in een ScrollViewer control stoppen....

    maar standaard werkt dit niet.

    De width van de WrapPanel moet overeenkomen met die van zijn parent control, de ScrollViewer dus. Databinding is hier de oplossing:

    <ScrollViewer HorizontalScrollBarVisibility="Hidden" VerticalScrollBarVisibility="Auto">
            <WrapPanel  Width="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type ScrollViewer}}, Path=ActualWidth}"
                Orientation="Horizontal" >
                

               .... child controls ....
               
            </WrapPanel>
     </ScrollViewer>

     

    Posted jun 19 2007, 09:44 by Jo-wen with no comments
    Filed under:
  • Google Custom Search

    Google biedt gebruikers de mogelijkheid om de resultaten van de search engine te beinvloeden.

    nu is er een of andere .Net guru die zelf interessante sites bijhoudt waarin gezocht moet worden.

    Dus als je dan op RSS zoekt, krijg je niet de wikipedia results, maar .Net topics over RSS..... 

    DotNet Developers Search
     

  • Window reference krijgen vanuit een willekeurige control

    de object tree in WPF is toch wel wezenlijk anders als bij winforms. Je kan niet zomaar object.Parent.Parent doen of zo 

    Het is mogelijk om door de tree te lopen met volgende generieke code:

            private void Button_Click(object sender, RoutedEventArgs e)
            {       
                DependencyObject owner = GetParent(stackPanel1, typeof(CustomClass));
            }

            private DependencyObject GetParent(DependencyObject d, Type t)
            {
                while (d != null)
                {
                    if (t.IsInstanceOfType(d))
                        break;

                    d = VisualTreeHelper.GetParent(d); // zit in System.Windows.Media;
                }
                return d;
            }

     

    Het zal vaak nodig zijn om een referentie te krijgen naar de window die de control bevat (met name bij het gebruik van user controls).
    Hiervoor is een specieke methode in het leven geroepen:

    CustomWindowClass customWindowClass = window.GetWindow(stackPanel1) as CustomWindowClass; // kan meteen gecast worden

     

    Posted jun 07 2007, 08:55 by Jo-wen with no comments
    Filed under:
  • Intellisense bij custom xml based docs

    Als je een custom xml document aan het tikken bent, en je beschikt reeds over het schema, dan kun je intellisense krijgen.

    Dit kun je doen door met de cursor in het document te gaan staan (bv in de .xaml), en dan de xsd bij de Schemas property in te stellen.

    In het "Add schema" dialoog worden standaard de xsd's uit de volgende dir gelezen: C:\Program Files\Microsoft Visual Studio 8\Xml\Schemas\
    Je kan ze uiteraard ook gewoon zelf toevoegen.


    note: check hier als je ineens je intellisense voor WPF kwijt bent

  • Hibernate optie weg na Disk Cleanup

    als je schijf vol begint te raken en je wil hem opschonen mbv de "Disk Cleanup", is er een optie om de "Hibernation File Cleaner" te verwijderen.

    Ik had verwacht dat die dan gewoon de hibernation file wegmietert, maar hij zet meteen de optie in windows om te hibernaten uit. De default wordt ineens "standby"....

    je kan hem weer aanzetten met: powercfg -h (de prompt wel runnen als admin)

    meer info
     

    Posted jun 07 2007, 12:21 by Jo-wen with no comments
    Filed under:
  • Vista quicklaunch shortcuts

    voor de keyboard junkies: de quicklaunch knoppen kun je in Vista activeren met win+1, win+2 etc....
    Posted jun 06 2007, 10:18 by Jo-wen with no comments
    Filed under:
  • Undo check out in TFS

    Het is mogelijk om de checkout van een file te undo'en (met genoeg rechten uiteraard)

    dit is handig in scenario's waarbij iemand op vakantie is of zo, of als je je pcnaam wijzigt tijdens een project (niet doen!)

    syntax:     tf undo /workspace:<pcnaam>;<username> $/<filepath> /s:<server>
    voorbeeld: tf undo /workspace:PCJOWEN;jowenm $/Develop/Source/Library.sln /s:http://x-develop-tfs:666/

    de /s param is alleen nodig als het commando niet op de server zelf wordt uitgevoerd
     

     

    Posted jun 06 2007, 10:07 by Jo-wen with no comments
    Filed under: