+1 to IsInDesignTool- HtmlPage.IsEnabled was the workaround from Silverlight 2 
ages, it will generate false positives when running out of browser (and other 
scenarios).

Pete

From: [email protected] 
[mailto:[email protected]] On Behalf Of Peter Gfader
Sent: Monday, August 16, 2010 11:25 PM
To: ozSilverlight
Subject: Re: Design time data

+1 to
if (DesignerProperties.IsInDesignTool)
{
  // create sample data for designer
}




On Tue, Aug 17, 2010 at 4:02 PM, Miguel Madero 
<[email protected]<mailto:[email protected]>> wrote:
We have to be careful with HtmlPage.IsEnabled. That was the way to do it in 
Silverlight 2, however this will break Out of Browser. Not a big issue if you 
don't care about OOB, but just something to keep in mind.

Try DesignerProperties.IsInDesignTool. This should work for both VS and Blend.

@David, there are a couple more options

1. Create Sample Data from class option in Blend. To be honest I don't like it 
and find it quite limited, but it's still an option.
2. Using a DesignTime ViewModel. Using a d:DataContext and set it to create an 
instance of your type.


On Tue, Aug 17, 2010 at 3:32 PM, ross 
<[email protected]<mailto:[email protected]>> wrote:
Hi David,

I've sent this directly to you, as you can't send attachments to the
list.  I'm a bit short of time to write an essay, so just drummed up a
sample.

The sample isn't the only way to do it, but maybe will give you some ideas.

The key is the check for  if (HtmlPage.IsEnabled), where the service
locator sets the mock data if false.  When in blend,
HtmlPage.IsEnabled = false.  Of course, you can do this where ever you
want in your code base.  You don't necessarily have to use a service
locator, or set the datacontext in the same manner.

If you open the project in blend, you will see the data displayed is
all mock data.  If you run it from VS you will see 'live' data.  Of
course the live data is a fudge in this case but should give you the
idea.

Let me know if you have any questions.

Cheers.

Ross

On Tue, Aug 17, 2010 at 12:23 PM, David Burela 
<[email protected]<mailto:[email protected]>> wrote:
> Thought I'd check how others are displaying design time data. There are 2
> ways that I go about it
> 1.
> Just setting the design time datacontext to a sampledata.xaml file
> <grid d:Datacontext={SamleData.Xaml}>
>
> 2.
> Doing it similar to how Jordan shows in his presentations
> View
> ViewModel
> Repository (Runtime, DesignTime, etc)
> (RVVM)
>
> The first option is nice and quick and easy to do, but it doesn't help you
> unit test your ViewModel at all.
> The 2nd option is good, but as far as I know depends on your ViewModel
> loading the data in the constructor.
> I am at a client where they load the data up as a seperate call, not in the
> constructor. Any tips on how I could still use the repository pattern, but
> still be able to load the data without anything in the constructor. Doesn't
> seem possible to me.
> -David Burela
> _______________________________________________
> ozsilverlight mailing list
> [email protected]<mailto:[email protected]>
> http://prdlxvm0001.codify.net/mailman/listinfo/ozsilverlight
>
>

_______________________________________________
ozsilverlight mailing list
[email protected]<mailto:[email protected]>
http://prdlxvm0001.codify.net/mailman/listinfo/ozsilverlight


--
Miguel A. Madero Reyes
www.miguelmadero.com<http://www.miguelmadero.com> (blog)
[email protected]<mailto:[email protected]>

_______________________________________________
ozsilverlight mailing list
[email protected]<mailto:[email protected]>
http://prdlxvm0001.codify.net/mailman/listinfo/ozsilverlight



--

.peter.gfader.
http://blog.gfader.com/
http://twitter.com/peitor


_______________________________________________
ozsilverlight mailing list
[email protected]
http://prdlxvm0001.codify.net/mailman/listinfo/ozsilverlight

Reply via email to