WiredPrairie

A little bit of everything: software, usability, .NET, WPF, design, ASP.NET, Silverlight, and more!

  • Home
  • About
  • Contact Me
  • Cooking
  • Old Archives
  • Photography
  • Quick Searches
  • You need this

From the Department of Uselessness

Posted by Aaron on Tuesday, August 24th 2010   

Digg it

Bookmark it

Stumble it

Email to friend

24
Aug

How many comments are there when one of the comments has been removed?

In this instance, apparently the count was 2.

SNAGHTML1ed5e447

If a second comment was not a reply to a first comment (which from the structure of the UI, I don’t believe it was), why indicate “this comment has been removed” and include it in the count? 

Aye. Programmers. Can’t live with them. Can’t live without them.

Filed under: Usability     
No Comment Yet   

On Twitter, follow wiredprairie.

Posted by Aaron on Monday, August 23rd 2010   

Digg it

Bookmark it

Stumble it

Email to friend

23
Aug

I’ve been using twitter a bit more recently, and posting less to my blog. I just haven’t been compelled to write much. I’ve got a few things queued up though and as soon as I finish the details, I’ll get some new posts up.

But, in the mean time, feel free to follow me on twitter: wiredprairie. Maybe I’ll see you on twitter!

I promise not to tweet too much. Certainly not too much about bowel movements or the details of the meals that preceded them. Smile

Filed under: General     
No Comment Yet   

Windows Phone 7 Marketplace: Ditch the Annual Fee for Free App Developers!

Posted by Aaron on Monday, August 23rd 2010   

Digg it

Bookmark it

Stumble it

Email to friend

23
Aug

Dear Microsoft,

A few facts:

  • I’m a competent Silverlight developer. I’ve even dabbled in XNA.
  • I’m an owner of a iPhone 3GS.
  • I would like a new phone.
  • I’d like to buy a phone powered by the Windows Phone 7 OS when it’s made available.
  • I’d like to make some free applications for my phone and others to use. A few for hobbies (like photography), and a few utilities for myself for work.
  • I don’t however want to spend $99 a year for the privilege of doing so.

Why not open it up for people like myself?

Here’s a few alternatives:

  • Make it free for those who make only free applications
  • Make it free for those who agree to include a Bing-Ad placement component in the application, in a prominent position.
  • Make it free for those who buy a copy of Visual Studio 2010 and Blend (like myself – I don’t use the Express editions).
  • Make it free so that there’s no barrier to entry – that people and companies don’t need to worry about the extra fee – just jump on the Windows Phone 7 bandwagon.

Without this change, I probably won’t buy a Windows Phone 7, and will start building more HTML 5 web apps, that will work just fine on my iPhone 3GS (powered by iOS4). Sad smile

Filed under: Coding, General     Tags: Phone
No Comment Yet   

Are DIVs really better than TABLEs?

Posted by Aaron on Wednesday, August 4th 2010   

Digg it

Bookmark it

Stumble it

Email to friend

4
Aug

The screen shot at the end of this post shows some of the HTML behind the main gmail.com page. I never looked before, so it came as a shock to me how many DIVs were used to construct the page. There are more than are visible as the document scrolled and I had only opened a particular sub-branch of the page.

According to the Chrome Developer Tools, there are 590 DIVs (in my inbox)!

image

So, are DIVs really better than TABLEs? Tables would be used to present data, and not just for layout in the case of Gmail.

Gmail has 11 TABLE elements on the page:

image

What would you do if you were creating a messaging application like Gmail?

image

Filed under: Coding     
No Comment Yet   

How to bind ListBoxItem.IsSelected to a bound item in Silverlight 4.0

Posted by Aaron on Monday, July 26th 2010   

Digg it

Bookmark it

Stumble it

Email to friend

26
Jul

This technique requires the Blend 4.0 SDK (which is included in Blend 4.0 and is also available as a free download.

Someone on StackOverflow asked how to bind a collection of items to a ListBox in Silverlight where the IsSelected property of the ListBoxItem is bound to an IsSelected property of the data item.

WPF has the native ability within a style to set the a style’s setter property IsSelected to a value of the two way binding to an IsSelected Property. Slick.

Silverlight, has no such thing unfortunately.

But, there’s a work around that isn’t too awful. Seriously.

image

What I’ve done is mapped the look and feel of the ListBoxItem selection to the DataTemplate for the item and removed it from the standard ListBoxItemContainer style:

<UserControl
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    xmlns:local="clr-namespace:TestSilverlightTodoListItem" xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity" xmlns:ei="http://schemas.microsoft.com/expression/2010/interactions" x:Class="TestSilverlightTodoListItem.MainPage"
    mc:Ignorable="d"
    d:DesignHeight="300" d:DesignWidth="400">

    <UserControl.Resources>        

        <local:PeopleList x:Key="PeopleListDataSource" d:IsDataSource="True"/>        

        <Style x:Key="ListBoxItemStyle1" TargetType="ListBoxItem">
            <Setter Property="Padding" Value="3"/>
            <Setter Property="HorizontalContentAlignment" Value="Stretch"/>
            <Setter Property="VerticalContentAlignment" Value="Top"/>
            <Setter Property="Background" Value="Transparent"/>
            <Setter Property="BorderThickness" Value="1"/>
            <Setter Property="TabNavigation" Value="Local"/>
            <Setter Property="Template">
                <Setter.Value>
                    <ControlTemplate TargetType="ListBoxItem">
                        <Grid Background="{TemplateBinding Background}">
                            <VisualStateManager.VisualStateGroups>
                                <VisualStateGroup x:Name="CommonStates">
                                    <VisualState x:Name="Normal"/>
                                    <VisualState x:Name="MouseOver">
                                    </VisualState>
                                    <VisualState x:Name="Disabled">
                                    </VisualState>
                                </VisualStateGroup>
                                <VisualStateGroup x:Name="SelectionStates">
                                    <VisualState x:Name="Unselected"/>
                                    <VisualState x:Name="Selected">
                                    </VisualState>
                                </VisualStateGroup>
                                <VisualStateGroup x:Name="FocusStates">
                                    <VisualState x:Name="Focused">
                                        <Storyboard>
                                            <ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetProperty="Visibility" Storyboard.TargetName="FocusVisualElement">
                                                <DiscreteObjectKeyFrame KeyTime="0">
                                                    <DiscreteObjectKeyFrame.Value>
                                                        <Visibility>Visible</Visibility>
                                                    </DiscreteObjectKeyFrame.Value>
                                                </DiscreteObjectKeyFrame>
                                            </ObjectAnimationUsingKeyFrames>
                                        </Storyboard>
                                    </VisualState>
                                    <VisualState x:Name="Unfocused"/>
                                </VisualStateGroup>
                            </VisualStateManager.VisualStateGroups>
                            <ContentPresenter x:Name="contentPresenter" ContentTemplate="{TemplateBinding ContentTemplate}" Content="{TemplateBinding Content}" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" Margin="{TemplateBinding Padding}"/>
                            <Rectangle x:Name="FocusVisualElement" RadiusY="1" RadiusX="1" Stroke="#FF6DBDD1" StrokeThickness="1" Visibility="Collapsed"/>
                        </Grid>
                    </ControlTemplate>
                </Setter.Value>
            </Setter>
        </Style>

        <DataTemplate x:Key="PersonTemplate">
            <Grid>
                <Grid.ColumnDefinitions>
                    <ColumnDefinition Width="Auto"/>
                    <ColumnDefinition Width="*"/>
                </Grid.ColumnDefinitions>
                <i:Interaction.Behaviors>
                    <ei:DataStateBehavior Binding="{Binding IsSelected, Mode=TwoWay}" Value="True" TrueState="Selected" FalseState="Unselected"/>
                </i:Interaction.Behaviors>
                <VisualStateManager.VisualStateGroups>
                    <VisualStateGroup x:Name="Selection">
                        <VisualStateGroup.Transitions>
                            <VisualTransition GeneratedDuration="0:0:0.25"/>
                        </VisualStateGroup.Transitions>
                        <VisualState x:Name="Selected">
                            <Storyboard>
                                <DoubleAnimation Duration="0" To="1" Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="fillColor" d:IsOptimized="True"/>
                                <DoubleAnimation Duration="0" To="1" Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="fillColor2" d:IsOptimized="True"/>
                            </Storyboard>
                        </VisualState>
                        <VisualState x:Name="Unselected"/>
                    </VisualStateGroup>
                </VisualStateManager.VisualStateGroups>
                <VisualStateManager.CustomVisualStateManager>
                    <ei:ExtendedVisualStateManager/>
                </VisualStateManager.CustomVisualStateManager>
                <Rectangle x:Name="fillColor" Fill="#FFBADDE9" IsHitTestVisible="False" Opacity="0" RadiusY="1" RadiusX="1" Grid.ColumnSpan="2"/>
                <Rectangle x:Name="fillColor2" Fill="#FFBADDE9" IsHitTestVisible="False" Opacity="0" RadiusY="1" RadiusX="1" Grid.ColumnSpan="2"/>
                <CheckBox IsChecked="{Binding IsSelected, Mode=TwoWay}" Grid.ColumnSpan="1"/>
                <TextBlock x:Name="textBlock" Text="{Binding Name}" Grid.Column="1"/>
            </Grid>
        </DataTemplate>
    </UserControl.Resources>
    <Grid x:Name="LayoutRoot" Background="White" DataContext="{Binding Source={StaticResource PeopleListDataSource}}" >
        <ListBox x:Name="myList" ItemsSource="{Binding}"
            ItemContainerStyle="{StaticResource ListBoxItemStyle1}"
            ItemTemplate="{StaticResource PersonTemplate}"
            SelectionMode="Multiple" />
    </Grid>
</UserControl>

The real magic is using the DataStateBehavior (which is included in the Blend 4.0 SDK):

<i:Interaction.Behaviors>
    <ei:DataStateBehavior Binding="{Binding IsSelected, Mode=TwoWay}" Value="True" TrueState="Selected" FalseState="Unselected"/>
</i:Interaction.Behaviors>

This ties the IsSelected property of the Person class (see below) to two VisualStates that I defined in the DataTemplate. A “Selected” and an “Unselected” state.

I grabbed the rectangle from the standard ListBoxItem container template template.

In the code behind, I wired up the selection changed event:

public partial class MainPage : UserControl
{
    private PeopleList _items = new PeopleList();

    public MainPage()
    {
        this.DataContext = _items;
        InitializeComponent();
        myList.SelectionChanged += new SelectionChangedEventHandler(myList_SelectionChanged);
    }

    void myList_SelectionChanged(object sender, SelectionChangedEventArgs e)
    {
        // these both just need to toggle
        foreach (object o in e.AddedItems)
        {
            Person p = o as Person;
            p.IsSelected = !p.IsSelected;
        }
        foreach (object o in e.RemovedItems)
        {
            Person p = o as Person;
            p.IsSelected = !p.IsSelected;
        }
    }

    void myList_KeyUp(object sender, KeyEventArgs e)
    {
        if (e.Key == Key.Space  )
        {
            if (e.OriginalSource is ListBoxItem)
            {
                Person p = (e.OriginalSource as ListBoxItem).DataContext as Person;
                if (p != null)
                {
                    p.IsSelected = !p.IsSelected;
                }
            }
        }
    }
}

The selection changed toggles the state of each item. Without doing that, the selection doesn’t behave correctly. The SelectedItems list on the listbox no longer reflects the reality of the bound data items – but that shouldn’t matter in this case as the property of the item reflects the real state accurately.

For testing:

public class PeopleList : ObservableCollection<Person>
{
    public PeopleList()
    {
      this.Add( new Person { Name = "Henry", IsSelected = true });
      this.Add(new Person { Name = "Bonnie", IsSelected = true });
      this.Add( new Person { Name = "Clyde", IsSelected = false });
      this.Add( new Person { Name = "Ervin", IsSelected = false });
      this.Add( new Person { Name = "Timmy", IsSelected = true });
      this.Add( new Person { Name = "Jane", IsSelected = true });

    }
}

And:

public class Person : INotifyPropertyChanged
{
    private bool _isSelected;
    private string _name;

    public string Name
    {
        get { return _name; }
        set
        {
            if (value != _name)
            {
                _name = value;
                RaisePropertyChanged("Name");
            }
        }
    }

    public bool IsSelected
    {
        get { return _isSelected; }
        set
        {
            if (_isSelected != value)
            {
                _isSelected = value;
                RaisePropertyChanged("IsSelected");
            }
        }
    }

    private void RaisePropertyChanged(string propertyName)
    {
        if (PropertyChanged != null)
        {
            PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
        }

    }

    public event PropertyChangedEventHandler PropertyChanged;
}
Filed under: Coding, Silverlight     
No Comment Yet   

Using Visual State Manager from a UserControl

Posted by Aaron on Monday, July 26th 2010   

Digg it

Bookmark it

Stumble it

Email to friend

26
Jul

To aid in an answer on StackOverflow that I had recently answered, I’m providing part of the response here.

The question was essentially, “what’s a way to use DataTriggers in Silverlight, without DataTriggers?”

I had suggested one idea would just to use VisualStates and a code behind file.

That’s what I’ve done here. I created an enum of type AnimateState, which has three possible values, Top, Left, and Right. By clicking on one of three buttons on the simple UI, it changes the value of the property, which in turn calls one of the VisualStates defined in the XAML.

In the example, it animates the position of the orange ellipse to various positions on the canvas.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;

namespace DemoShowVisualStateManager
{
    public partial class MainPage : UserControl
    {
        private AnimateState _animateState;

        public MainPage()
        {
            InitializeComponent();
        }

        public AnimateState State
        {
            get { return _animateState; }

            set
            {
                if (_animateState != value && Enum.IsDefined(typeof(AnimateState), value))
                {
                    _animateState = value;

                    VisualStateManager.GoToState(this, value.ToString(), true);
                }
            }

        }

        private void Button_Click(object sender, System.Windows.RoutedEventArgs e)
        {
            AnimateState state;
            if (AnimateState.TryParse((sender as Button).Content.ToString(), out state))
            {
                State = state;
            }

        }
    }

    public enum AnimateState
    {
        Top,
        Left,
        Right
    }
}

 

<UserControl x:Class="DemoShowVisualStateManager.MainPage"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    mc:Ignorable="d"
    Width="500" Height="500">

    <UserControl.Resources>
    </UserControl.Resources>
    <Canvas x:Name="LayoutRoot" Background="White">
        <VisualStateManager.VisualStateGroups>
            <VisualStateGroup x:Name="Positions">
                <VisualStateGroup.Transitions>
                    <VisualTransition GeneratedDuration="0:0:3"/>
                </VisualStateGroup.Transitions>
                <VisualState x:Name="Right">
                    <Storyboard>
                        <DoubleAnimation Duration="0" To="389" Storyboard.TargetProperty="(UIElement.RenderTransform).(CompositeTransform.TranslateY)" Storyboard.TargetName="ball" d:IsOptimized="True"/>
                        <DoubleAnimation Duration="0" To="198" Storyboard.TargetProperty="(UIElement.RenderTransform).(CompositeTransform.TranslateX)" Storyboard.TargetName="ball" d:IsOptimized="True"/>
                    </Storyboard>
                </VisualState>
                <VisualState x:Name="Left">
                    <Storyboard>
                        <DoubleAnimation Duration="0" To="-199" Storyboard.TargetProperty="(UIElement.RenderTransform).(CompositeTransform.TranslateX)" Storyboard.TargetName="ball" d:IsOptimized="True"/>
                        <DoubleAnimation Duration="0" To="390" Storyboard.TargetProperty="(UIElement.RenderTransform).(CompositeTransform.TranslateY)" Storyboard.TargetName="ball" d:IsOptimized="True"/>
                    </Storyboard>
                </VisualState>
                <VisualState x:Name="Top"/>
            </VisualStateGroup>
        </VisualStateManager.VisualStateGroups>

        <Ellipse x:Name="ball" Stroke="#FFFFD9B8" RenderTransformOrigin="0.5,0.5" Height="100" VerticalAlignment="Top" Canvas.Top="10" Width="100" Canvas.Left="200">
            <Ellipse.RenderTransform>
                <CompositeTransform/>
            </Ellipse.RenderTransform>
            <Ellipse.Fill>
                <RadialGradientBrush Center="0.388,0.328" GradientOrigin="0.388,0.328" RadiusX="0.63">
                    <GradientStop Color="#FFF97200" Offset="1"/>
                    <GradientStop Color="#FFFFD9B8"/>
                </RadialGradientBrush>
            </Ellipse.Fill>
        </Ellipse>
        <Button Content="Left" Height="33" Canvas.Left="200" Canvas.Top="229" Width="100" Click="Button_Click"/>
        <Button Content="Top" Height="33" Canvas.Left="200" Canvas.Top="266" Width="100" Click="Button_Click"/>
        <Button Content="Right" Height="33" Canvas.Left="200" Canvas.Top="303" Width="100" Click="Button_Click"/>

    </Canvas>
</UserControl>

image

Filed under: Coding, Silverlight     
No Comment Yet   

Visual Studio 2010 Add-in Settings Swapper

Posted by Aaron on Sunday, July 4th 2010   

Digg it

Bookmark it

Stumble it

Email to friend

4
Jul

Challenged by a coworker recently, I created a simple add-in for Visual Studio 2010 to modify the settings for code formatting based on the file extension. The usage scenario is simple: allow for different language formatting rules based on the file file type (or extension). In this case, he wanted to have a different standard for curly brace usage in MVC ASPX pages overriding the default.

The addin, called Settings Swapper may be downloaded from CodePlex and is licensed using the new BSD license.

The documentation is here.

The settings he used for MVC pages are included in the documentation. If you have any questions or issues, either leave a comment here or add something to codeplex.

Enjoy.

Filed under: Coding     
No Comment Yet   

Silverlight installer doesn’t like Adobe Updater

Posted by Aaron on Thursday, July 1st 2010   

Digg it

Bookmark it

Stumble it

Email to friend

1
Jul

I found this experience quite amusing today…

image

Filed under: Humor     
No Comment Yet   

Now, a 3rd option, IIS Express

Posted by Aaron on Tuesday, June 29th 2010   

Digg it

Bookmark it

Stumble it

Email to friend

29
Jun

ScottGu announced IIS Express.

IIS Express will become a new way for developers to do local web development in a safe, administrative-account-free way, yet get the full experience of IIS 7. I’d bet the days of the ASP.NET Development server are numbered if IIS Express actually works as well as is suggested (if the same debug/test/run cycle is maintained, and the perf is good, I can’t see any reason why not).

The only bad news is that the announcement precedes the availability of IIS Express and also precedes the availability of patches for VS 2010 to make integration with this new option simple. The latter sounds like it’s farther out than IIS Express itself.

I’d like to see a feature for allowing the web sites hosted within IIS Express to be available from other machines and not just localhost. It would make sharing current development with other team members, QA, managers, etc., much simpler. For developers on older versions of Windows (like XP), they have no option for locally hosting a IIS7 web site and showing it to others. (From the initial blog post, it’s not mentioned if this scenario is supported).

Filed under: General     
No Comment Yet   

Visual Studio 2010 Crashes Repeatedly

Posted by Aaron on Monday, June 28th 2010   

Digg it

Bookmark it

Stumble it

Email to friend

28
Jun

If you have my kind of luck and Visual Studio 2010 crashes every time you open a specific project or solution, try deleting the .suo file associated with the solution (the Visual Studio Solution User Options). It’s located in the same folder as the solution (.sln) file, and often is hidden.

It usually works for me.

The stack dump from the mini-dump taken by Visual Studio isn’t real enlightening. Things went wrong. Smile

     ntdll.dll!@RtlpLowFragHeapFree@8()  + 0×89 bytes   
     ntdll.dll!_RtlFreeHeap@12()  + 0x7e bytes   
     apphelp.dll!_SdbFree@4()  + 0×22 bytes   
     apphelp.dll!_HashFree@4()  + 0x3c bytes   
     apphelp.dll!_SdbpReleaseSearchDBContext@4()  + 0x6d bytes   
     apphelp.dll!_SdbGetMatchingExeEx@32()  + 0x2b9 bytes   
     apphelp.dll!_InternalCheckRunApp@76()  + 0x21c bytes   
     apphelp.dll!_ApphelpCheckRunAppEx@56()  + 0xa7 bytes   
     kernel32.dll!_BaseRestoreImpersonation@4()  – 0x75d55 bytes   
     kernel32.dll!_BaseCheckRunApp@52()  + 0×46 bytes   
     kernel32.dll!_BasepCheckBadapp@60()  + 0x1a1 bytes   
     kernel32.dll!_BasepQueryAppCompat@68()  + 0×63 bytes   
     kernel32.dll!_CreateProcessInternalW@48()  + 0×961 bytes   
>    kernel32.dll!_CreateProcessInternalA@48()  + 0×123 bytes   
     kernel32.dll!_CreateProcessA@40()  + 0x2c bytes   
     devenv.exe!DwCreateProcess()  + 0xc0 bytes   
     devenv.exe!LaunchWatson()  + 0x2b2 bytes   
     devenv.exe!DwExceptionFilterEx()  + 0xed bytes   
     devenv.exe!DwExceptionFilter()  + 0x1f bytes   
     mscoreei.dll!InternalUnhandledExceptionFilter()  + 0x1c bytes   
     kernel32.dll!_UnhandledExceptionFilter@4()  + 0x5e2 bytes   
     ntdll.dll!___RtlUserThreadStart@8()  + 0x369cc bytes   
     ntdll.dll!@_EH4_CallFilterFunc@8()  + 0×12 bytes   
     ntdll.dll!ExecuteHandler2@20()  + 0×26 bytes   
     ntdll.dll!ExecuteHandler@20()  + 0×24 bytes   
     ntdll.dll!_KiUserExceptionDispatcher@8()  + 0xf bytes   
     ntdll.dll!@RtlpLowFragHeapFree@8()  + 0×89 bytes   
     ntdll.dll!_RtlFreeHeap@12()  + 0x7e bytes   
     ole32.dll!CRetailMalloc_Free()  + 0x1c bytes   
     ole32.dll!_CoTaskMemFree@4()  + 0×13 bytes   
     Microsoft.VisualStudio.Editor.Implementation.ni.dll!0daff77b()    
     [Frames below may be incorrect and/or missing, no symbols loaded for Microsoft.VisualStudio.Editor.Implementation.ni.dll]   
     Microsoft.VisualStudio.Editor.Implementation.ni.dll!0daff77b()    
     Microsoft.VisualStudio.Editor.Implementation.ni.dll!0dafdfcd()    
     Microsoft.VisualStudio.Editor.Implementation.ni.dll!0daff642()    
     Microsoft.VisualStudio.Editor.Implementation.ni.dll!0dafdfcd()    
     cslangsvc.dll!CEditFilter::QueryStatus()  + 0x13c bytes   
     cslangsvc.dll!CVsEditFilter::QueryStatus()  + 0×95 bytes   
     mscorlib.ni.dll!5af61753()    
     Microsoft.VisualStudio.Editor.Implementation.ni.dll!0dae99eb()    
     Microsoft.VisualStudio.Editor.Implementation.ni.dll!0dae9a1c()    
     Microsoft.VisualStudio.Platform.WindowManagement.ni.dll!6dce2ae4()    
     Microsoft.VisualStudio.Platform.WindowManagement.ni.dll!6dcdf98c()    
     msenv.dll!CVSCommandTarget::QueryStatusCmd()  + 0x423c bytes   
     msenv.dll!`anonymous namespace’::QueryStatusForController()  + 0×63 bytes   
     msenv.dll!`anonymous namespace’::GetQueryStatusFlags()  + 0x3a bytes   
     msenv.dll!CSurfaceCommandingSupport::IsCommandEnabled()  + 0x1bbb bytes   
     msenv.dll!`anonymous namespace’::DoCommonStateUpdating<CommandUI::Models::IButtonController,`anonymous namespace’::<lambda1> >()  + 0xa2 bytes   
     msenv.dll!CUpdateVisitor::VisitButtonController()  + 0x1b bytes   
     msenv.dll!CControllerVisitorBase::DispatchVisit()  + 0x3bf bytes   
     msenv.dll!CControllerVisitorBase::VisitController()  + 0×22 bytes   
     msenv.dll!CSurfaceCommandingSupport::Update()  + 0x2e bytes   
     msenv.dll!CommandUI::Models::Impl::CControllerBase::Update()  + 0×21 bytes   
     msenv.dll!UpdateChildCollectionWithSeparators()  + 0x17f bytes   
     msenv.dll!CUpdateVisitor::VisitToolBarController()  + 0x2a6 bytes   
     msenv.dll!CControllerVisitorBase::DispatchVisit()  + 0×226 bytes   
     msenv.dll!CControllerVisitorBase::VisitController()  + 0×22 bytes   
     msenv.dll!CSurfaceCommandingSupport::Update()  + 0x2e bytes   
     msenv.dll!UpdateCommandModels()  + 0×147 bytes   
     msenv.dll!CmdUpdateForceInternal()  + 0×28 bytes   
     msenv.dll!CMsoComponent::FDoNonPeriodicIdle()  + 0×991 bytes   
     msenv.dll!CMsoComponent::FDoIdle()  + 0×17 bytes   
     msenv.dll!SCM::FDoIdleLoop()  + 0xf3 bytes   
     msenv.dll!SCM::FDoIdle()  + 0xc7 bytes   
     msenv.dll!SCM_MsoStdCompMgr::FDoIdle()  + 0×13 bytes   
     msenv.dll!CMsoCMHandler::EnvironmentMsgLoop()  + 0x74a bytes   
     msenv.dll!CMsoCMHandler::FPushMessageLoop()  + 0×79 bytes   
     msenv.dll!SCM::FPushMessageLoop()  + 0x8c bytes   
     msenv.dll!SCM_MsoCompMgr::FPushMessageLoop()  + 0x2a bytes   
     msenv.dll!CMsoComponent::PushMsgLoop()  + 0×28 bytes   
     msenv.dll!VStudioMainLogged()  + 0x22a bytes   
     msenv.dll!_VStudioMain()  + 0×78 bytes   
     devenv.exe!util_CallVsMain()  + 0xdb bytes   
     devenv.exe!CDevEnvAppId::Run()  + 0×693 bytes   
     devenv.exe!_WinMain@16()  + 0×88 bytes   
     devenv.exe!operator new[]()  + 0xa59d bytes   
     kernel32.dll!@BaseThreadInitThunk@12()  + 0×12 bytes   
     ntdll.dll!___RtlUserThreadStart@8()  + 0×27 bytes   
     ntdll.dll!__RtlUserThreadStart@8()  + 0x1b bytes   

Filed under: Coding     
No Comment Yet   
« Older Entries
Google
Custom Search
  • Recent Entries
  • Recent Comments
  • Most Comments
  • From the Department of Uselessness
  • On Twitter, follow wiredprairie.
  • Windows Phone 7 Marketplace: Ditch the Annual Fee for Free App Developers!
  • Are DIVs really better than TABLEs?
  • How to bind ListBoxItem.IsSelected to a bound item in Silverlight 4.0
  • Using Visual State Manager from a UserControl
  • Visual Studio 2010 Add-in Settings Swapper
  • Silverlight installer doesn’t like Adobe Updater
  • Now, a 3rd option, IIS Express
  • Visual Studio 2010 Crashes Repeatedly
  • Aaron in Cooking
  • Carrie in Cooking
  • Aaron in Valid Trust Anchor?
  • Adam in Visual Studio 2010 Remote Desktop P…
  • Windows7User in Valid Trust Anchor?
  • agtrier in The Best Free Syntax Highlighting E…
  • Rale in A Silverlight 2 TilePanel
  • Suketu in Prudential User Experience Fail
  • Vassili in Cooking
  • sideshow in Silverlight: Dynamically creating X…
  • Cooking (21)
  • Technical Interview Question Series Starting (21)
  • What's the perfect API? (14)
  • Apple fails to listen to Safari &quot;Update&quot; on Windows issue... (13)
  • Data Binding and Tooltips in Silverlight (13)
  • Silverlight Stopwatch class in C# (13)
  • The Best Free Syntax Highlighting Editor is ....? (11)
  • Converting a mapped drive letter to a network path using C# (10)
  • WPF and Powershell Series -- I don't get it. (10)
  • Help a Geek! -- Need some good fiction books to read! (10)

@wiredprairie Updates

    follow me on Twitter

    Archives

    • August 2010 (4)
    • July 2010 (4)
    • June 2010 (8)
    • May 2010 (7)
    • April 2010 (7)
    • March 2010 (11)
    • February 2010 (2)
    • January 2010 (7)
    • December 2009 (8)
    • November 2009 (6)
    • October 2009 (4)
    • September 2009 (4)

    Pages

    • About
    • Contact Me
    • Cooking
      • GE Advantium Oven
    • Old Archives
    • Photography
    • Quick Searches
    • You need this
      • Software Development Bookshelf

    Links

    • Old WiredPrairie Archives - Here lies the old WiredPraire content …
    • Quick Searches - A few filtered searches on Google to cut down the signal to noise ratio …
    • SnugUp - Best SmugMug Uploader for Windows

    Subscribe

    •  Subscribe in a reader

       Subscribe to comments

      technorati add aol netvibes myyahoo modern freedictionary ngsub

    Browse Our Tag Archives

    AIR Ajax ASP.NET bug Expression Blend Flash Flex IE8 Interviews Phone Silverlight SnugUp TECHED Typography Silverlight Flash View Source WPF

    Links

    • Old WiredPrairie Archives - Here lies the old WiredPraire content …
    • Quick Searches - A few filtered searches on Google to cut down the signal to noise ratio …
    • SnugUp - Best SmugMug Uploader for Windows

    Top Commentators

      • Aaron
      • Carrie

    Recent Updated Post

    • From the Department of Uselessness
    • On Twitter, follow wiredprairie.
    • Windows Phone 7 Marketplace: Ditch the Annual Fee for Free App Developers!
    • Are DIVs really better than TABLEs?
    • How to bind ListBoxItem.IsSelected to a bound item in Silverlight 4.0
    • Using Visual State Manager from a UserControl
    • Visual Studio 2010 Add-in Settings Swapper
    • Silverlight installer doesn&rsquo;t like Adobe Updater
    • Now, a 3rd option, IIS Express
    • Visual Studio 2010 Crashes Repeatedly

    ©2007-2010 WiredPrairie

    Disclaimer: All data and information provided on this site is for informational purposes only.

    In association with Amazon.

    WordPress Themes by Irish Band & Steel Band
    (And, quite a few tweaks by WiredPrairie)