<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: UI Virtualization</title>
	<atom:link href="http://bea.stollnitz.com/blog/?feed=rss2&#038;p=338" rel="self" type="application/rss+xml" />
	<link>http://bea.stollnitz.com/blog/?p=338</link>
	<description>on Silverlight and WPF</description>
	<lastBuildDate>Mon, 02 Aug 2010 17:57:18 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Bea</title>
		<link>http://bea.stollnitz.com/blog/?p=338&#038;cpage=1#comment-185091</link>
		<dc:creator>Bea</dc:creator>
		<pubDate>Thu, 21 Jan 2010 18:38:14 +0000</pubDate>
		<guid isPermaLink="false">http://bea.stollnitz.com/blog/?p=338#comment-185091</guid>
		<description>Hi Michael,

Canvas does not have support for UI virtualization, in Silverlight or WPF. VirtualizingStackPanel is the one panel that does.

Thanks,
Bea</description>
		<content:encoded><![CDATA[<p>Hi Michael,</p>
<p>Canvas does not have support for UI virtualization, in Silverlight or WPF. VirtualizingStackPanel is the one panel that does.</p>
<p>Thanks,<br />
Bea</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: majkez</title>
		<link>http://bea.stollnitz.com/blog/?p=338&#038;cpage=1#comment-180887</link>
		<dc:creator>majkez</dc:creator>
		<pubDate>Wed, 30 Dec 2009 11:04:21 +0000</pubDate>
		<guid isPermaLink="false">http://bea.stollnitz.com/blog/?p=338#comment-180887</guid>
		<description>Dear Bea,

is it possible to use virtualization in Silverlight 3 on Canvas?

Thanks in advance!
Michael</description>
		<content:encoded><![CDATA[<p>Dear Bea,</p>
<p>is it possible to use virtualization in Silverlight 3 on Canvas?</p>
<p>Thanks in advance!<br />
Michael</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Bea</title>
		<link>http://bea.stollnitz.com/blog/?p=338&#038;cpage=1#comment-170234</link>
		<dc:creator>Bea</dc:creator>
		<pubDate>Fri, 20 Nov 2009 17:30:04 +0000</pubDate>
		<guid isPermaLink="false">http://bea.stollnitz.com/blog/?p=338#comment-170234</guid>
		<description>Hi Simon,
In your scenario, I think the best choice is to simplify the styling of each ListBox item. You may need to profile your app.
Bea</description>
		<content:encoded><![CDATA[<p>Hi Simon,<br />
In your scenario, I think the best choice is to simplify the styling of each ListBox item. You may need to profile your app.<br />
Bea</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: ivl</title>
		<link>http://bea.stollnitz.com/blog/?p=338&#038;cpage=1#comment-162617</link>
		<dc:creator>ivl</dc:creator>
		<pubDate>Mon, 07 Sep 2009 11:55:19 +0000</pubDate>
		<guid isPermaLink="false">http://bea.stollnitz.com/blog/?p=338#comment-162617</guid>
		<description>Hi Bea,

Sorry for the super late reply, but I was overseas.

Unfortunately I still haven&#039;t gotten the keyboard navigation working properly. I spent a few hours after my posting trying, but a lot of things in the ComboBox and Selector classes are marked as internal to the System.Windows assembly, making it very difficult to implement.
The keyboard navigation works fine when the drop down of my VirtualizingComboBox is closed, but doesn&#039;t work properly when the drop down is open. Due to time constraints I left the VirtualizingComboBox as is.

I am interested in Thomas&#039; solution further down below (thanks Thomas) and hope that he posts some code. I might look at the AutoCompleteBox code myself in Reflector when I revisit this problem at a later stage.

Thanks Bea.</description>
		<content:encoded><![CDATA[<p>Hi Bea,</p>
<p>Sorry for the super late reply, but I was overseas.</p>
<p>Unfortunately I still haven&#8217;t gotten the keyboard navigation working properly. I spent a few hours after my posting trying, but a lot of things in the ComboBox and Selector classes are marked as internal to the System.Windows assembly, making it very difficult to implement.<br />
The keyboard navigation works fine when the drop down of my VirtualizingComboBox is closed, but doesn&#8217;t work properly when the drop down is open. Due to time constraints I left the VirtualizingComboBox as is.</p>
<p>I am interested in Thomas&#8217; solution further down below (thanks Thomas) and hope that he posts some code. I might look at the AutoCompleteBox code myself in Reflector when I revisit this problem at a later stage.</p>
<p>Thanks Bea.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Bea</title>
		<link>http://bea.stollnitz.com/blog/?p=338&#038;cpage=1#comment-161328</link>
		<dc:creator>Bea</dc:creator>
		<pubDate>Fri, 28 Aug 2009 20:07:21 +0000</pubDate>
		<guid isPermaLink="false">http://bea.stollnitz.com/blog/?p=338#comment-161328</guid>
		<description>Great idea. Thanks for posting!
Bea</description>
		<content:encoded><![CDATA[<p>Great idea. Thanks for posting!<br />
Bea</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Thomas</title>
		<link>http://bea.stollnitz.com/blog/?p=338&#038;cpage=1#comment-161327</link>
		<dc:creator>Thomas</dc:creator>
		<pubDate>Fri, 28 Aug 2009 20:02:59 +0000</pubDate>
		<guid isPermaLink="false">http://bea.stollnitz.com/blog/?p=338#comment-161327</guid>
		<description>Hi Mark, Ivan and Bea,

Another workaround for the ComboBox issue is to use a AutoCompleteBox with a template so it looks like a combobox.
This should work since the AutoCompleteBox internally uses a ListBox.

I will post some code later.

Thomas</description>
		<content:encoded><![CDATA[<p>Hi Mark, Ivan and Bea,</p>
<p>Another workaround for the ComboBox issue is to use a AutoCompleteBox with a template so it looks like a combobox.<br />
This should work since the AutoCompleteBox internally uses a ListBox.</p>
<p>I will post some code later.</p>
<p>Thomas</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Simon Hecht</title>
		<link>http://bea.stollnitz.com/blog/?p=338&#038;cpage=1#comment-170235</link>
		<dc:creator>Simon Hecht</dc:creator>
		<pubDate>Tue, 28 Jul 2009 13:38:14 +0000</pubDate>
		<guid isPermaLink="false">http://bea.stollnitz.com/blog/?p=338#comment-170235</guid>
		<description>Doesn&#039;t seem to work. I have some strange behaviour now. When I add a column in the item&#039;s listview the listbox starts creating new items.</description>
		<content:encoded><![CDATA[<p>Doesn&#8217;t seem to work. I have some strange behaviour now. When I add a column in the item&#8217;s listview the listbox starts creating new items.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Simon Hecht</title>
		<link>http://bea.stollnitz.com/blog/?p=338&#038;cpage=1#comment-157607</link>
		<dc:creator>Simon Hecht</dc:creator>
		<pubDate>Tue, 28 Jul 2009 13:12:52 +0000</pubDate>
		<guid isPermaLink="false">http://bea.stollnitz.com/blog/?p=338#comment-157607</guid>
		<description>Hey,

I had the problem that virtualisation helped me but scrolling went slow because my listbox&#039;s items are too big to load fast enough to scroll fluently. Recycling worked but just for a few seconds until garbadge collector came. So I did a little trick: Each time an item loads I add a reference to the control in which the listbox exist which causes that garbadge collector has to go home with empty hands and scrolling spikes just for the first time.</description>
		<content:encoded><![CDATA[<p>Hey,</p>
<p>I had the problem that virtualisation helped me but scrolling went slow because my listbox&#8217;s items are too big to load fast enough to scroll fluently. Recycling worked but just for a few seconds until garbadge collector came. So I did a little trick: Each time an item loads I add a reference to the control in which the listbox exist which causes that garbadge collector has to go home with empty hands and scrolling spikes just for the first time.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Bea</title>
		<link>http://bea.stollnitz.com/blog/?p=338&#038;cpage=1#comment-157569</link>
		<dc:creator>Bea</dc:creator>
		<pubDate>Tue, 28 Jul 2009 00:28:31 +0000</pubDate>
		<guid isPermaLink="false">http://bea.stollnitz.com/blog/?p=338#comment-157569</guid>
		<description>Sure, anything is possible :)

You would need to re-implement significant portions of the virtualization code, though, such as VirtualizingStackPanel and ItemContainerGenerator and potentially more. It would be possible, but not straightforward, so it really depends how much time and motivation you have to solve this problem. If you do decide to take on the challenge, please tell me about it and I&#039;ll advertise it on my blog.

Bea</description>
		<content:encoded><![CDATA[<p>Sure, anything is possible :)</p>
<p>You would need to re-implement significant portions of the virtualization code, though, such as VirtualizingStackPanel and ItemContainerGenerator and potentially more. It would be possible, but not straightforward, so it really depends how much time and motivation you have to solve this problem. If you do decide to take on the challenge, please tell me about it and I&#8217;ll advertise it on my blog.</p>
<p>Bea</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jose Fajardo</title>
		<link>http://bea.stollnitz.com/blog/?p=338&#038;cpage=1#comment-157568</link>
		<dc:creator>Jose Fajardo</dc:creator>
		<pubDate>Tue, 28 Jul 2009 00:11:14 +0000</pubDate>
		<guid isPermaLink="false">http://bea.stollnitz.com/blog/?p=338#comment-157568</guid>
		<description>Thanks Bea, thats pretty much what I expected. 

Now the question i ask is this, if we didn&#039;t care about setting the size of the thumb and actually wanted to hide the scrollbar and only expose a touch like way of navigating the list (like the iPhone scroll lists). Could we somehow tweak the virtualized logic to work for pixel based movement and just ignore setting the thumb heights?

Basically is the only reason for using item based scrolling for virtualized lists because of the thumb and setting it to the correct height?</description>
		<content:encoded><![CDATA[<p>Thanks Bea, thats pretty much what I expected. </p>
<p>Now the question i ask is this, if we didn&#8217;t care about setting the size of the thumb and actually wanted to hide the scrollbar and only expose a touch like way of navigating the list (like the iPhone scroll lists). Could we somehow tweak the virtualized logic to work for pixel based movement and just ignore setting the thumb heights?</p>
<p>Basically is the only reason for using item based scrolling for virtualized lists because of the thumb and setting it to the correct height?</p>
]]></content:encoded>
	</item>
</channel>
</rss>
