<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress.com" -->
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	>

<channel>
	<title>expander &amp;laquo; WordPress.com Tag Feed</title>
	<link>http://en.wordpress.com/tag/expander/</link>
	<description>Feed of posts on WordPress.com tagged "expander"</description>
	<pubDate>Mon, 28 Dec 2009 14:50:31 +0000</pubDate>

	<generator>http://en.wordpress.com/tags/</generator>
	<language>en</language>

<item>
<title><![CDATA[A Christmas Eve Message From Ithaca is Doomed]]></title>
<link>http://ithacaisdoomed.wordpress.com/2009/12/24/a-christmas-eve-message-from-ithaca-is-doomed/</link>
<pubDate>Thu, 24 Dec 2009 15:03:20 +0000</pubDate>
<dc:creator>ithacaisdoomed</dc:creator>
<guid>http://ithacaisdoomed.wordpress.com/2009/12/24/a-christmas-eve-message-from-ithaca-is-doomed/</guid>
<description><![CDATA[In a recent piece in The Guardian, George Monbiot wrote about the effort to redefine humanity: Human]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>In a recent piece in <em>The Guardian</em>, George Monbiot wrote about<a href="http://www.guardian.co.uk/commentisfree/cif-green/2009/dec/14/climate-change-battle-redefine-humanity/print" target="_blank"> the effort to redefine humanity</a>:</p>
<p>Humanity is no longer split between conservatives and liberals, reactionaries and progressives, though both sides are informed by the older politics. Today the battle lines are drawn between expanders and restrainers; those who believe that there should be no impediments and those who believe that we must live within limits.</p>
<p>I highly recommend reading this article yourself.  I&#8217;ve been thinking about it in the context of this season of both giving and excess.  At no other time of the year is the contrast between restraint and expansion so vivid.  Historically, the Christmas season has always had its elements of excess&#8211;this was the main reason the Puritans outlawed the traditional celebration of Christmas in Colonial New England.  A this time of the year, it was customary for roving bands, composed primarily of young men, to go from house to house, &#8220;wassailing.&#8221;  Under threat of violence or vandalism, these bands would coerce the master of a household to share some of his &#8220;private stock,&#8221; of liquor, ale, or good food.</p>
<p>This sort of &#8220;turning of the tables&#8221; custom has been widespread: in the European Kalends Traditions when revelers could shake off some of the restraints imposed by the Catholic Church.  In the Feast of Fools, when a &#8220;kingly fool&#8221; was chosen by lot, and who then got to behave without restraint, consuming, chasing women, and insulting everyone around.  In the Antebellum South, masters often served their slaves on one special night of wild disport and merriment.  Underlying all of these customs was an attempt to reinforce the status quo:  the hierarchy could maintain its dominance a bit easier if those lower down were given the illusion of some freedom. In America, these customs were so widespread, and so potentially troublesome, that there was a deliberate effort to shift the Christmas celebration away from the &#8220;wassailing&#8221; and merriment towards a more quiet family, oriented affair&#8211;accompanied by a movement into a controlled, capitalist orgy of giving and receiving the gifts advertisers propagandizing the American public to desire. Now, Americans&#8217; lack of restraint in spending money they might not even have has come to uphold a good deal of the global economy. </p>
<p>In addition to these traditions of sanctioned excess, the Christmas season has also featured those more reflective traditions, quiet inward looking traditions, most notably the recognition of a Saviour&#8217;s birth, but also the birth of a renewed sun, as the longest night of the year finally gives sway to increasing day.  I&#8217;m not a religious person, but I struggle with meaning this time of year, and search for it just as earnestly as the most pious.  How amazing the solstice must have been in a world without electric light!  How sumptuous the rituals of excess in a world where you produced your food yourself!  And in the days before strands of LED christmas lights, how magical to awake on Christmas morning to a tree glowing with lit candles!</p>
<p>Circumstancial reality imposed the limits on people that made the Christmas excess seem all the more precious. Why even an orange tossed through your log cabin door by a reveler posing as Saint Nicholas was a special thing! </p>
<div id="attachment_66" class="wp-caption aligncenter" style="width: 202px"><a href="http://ithacaisdoomed.wordpress.com/files/2009/12/hirstorica-krampus-and-child-on-toy-horse.jpg"><img class="size-medium wp-image-66" title="hirstorica-krampus-and-child-on-toy-horse" src="http://ithacaisdoomed.wordpress.com/files/2009/12/hirstorica-krampus-and-child-on-toy-horse.jpg?w=192" alt="" width="192" height="300" /></a><p class="wp-caption-text">The Austrian Krampus would give a child an orange before beating him with a rusty chain</p></div>
<p>Nowadays, I can walk into Wegmans anytime of year and pick up a quart of orange juice.  Profligate use of fossil fuels has dissolved many of the old limits and just about any desire can be satisfied on a whim.  However, for many, limits have reared an ugly head as people have lost their jobs and homes due to the machinations of an expansionist &#8221;free market economy.&#8221;  <a href="http://www.politicsdaily.com/2009/12/01/food-stamp-diet-popular-but-nutritionally-challenged/" target="_blank">For the record 73 million Americans on Foodstamps this Christmas Eve,</a> knowledge of limits is becoming all too familiar.  Reality, whatever it might be, could mean learning to both recognize and live within a new set of limits.</p>
<p>Are you an expander or a restrainer?  I ask this not from any implied expertise or sense of moral superiority, but as one who struggles with the question just as surely as anyone else.  Minute by minute, second by second, we can be bombarded with messages, exorting us to excess&#8211;the messages from the &#8220;expanders.&#8221;  The expansionist voice would even have us believe that by choosing the right gift we can do a little bit to &#8220;save the planet,&#8221; as though that task has ever been any one person&#8217;s responsibility.  Who and what are we trying to save?  This Christmas, I&#8217;m trying to find meaning in living as a restrainer.  I&#8217;m trying to discern  the voice of a new reality.  I&#8217;m hoping that I can restore my own sense of meaning, and that the bit of excess I allow myself this time of year will be all the more precious because I have heard the call.  May your Holiday be filled with both limits and excess&#8230;and most of all, meaning.</p>
<p>Next week:  The Ithaca is Doomed Predictions for 2010!</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[I'm Seeing Another Man...]]></title>
<link>http://specificallyspeaking.wordpress.com/2009/12/16/im-seeing-another-man/</link>
<pubDate>Wed, 16 Dec 2009 20:55:31 +0000</pubDate>
<dc:creator>Christina Heald</dc:creator>
<guid>http://specificallyspeaking.wordpress.com/2009/12/16/im-seeing-another-man/</guid>
<description><![CDATA[I&#8217;m seeing another man. In fact, I saw him twice last week. I also got to spend time with his ]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><a href="http://specificallyspeaking.wordpress.com/files/2009/12/naughty-dentist-close-up-naughty-dentist-close-up.jpg"><img src="http://specificallyspeaking.wordpress.com/files/2009/12/naughty-dentist-close-up-naughty-dentist-close-up.jpg?w=204" alt="" title="naughty dentist close up.naughty dentist close up" width="204" height="300" class="aligncenter size-medium wp-image-774" /></a></p>
<p>I&#8217;m seeing another man.  In fact, I saw him twice last week.  I also got to spend time with his partner and we discussed a possible threesome for later in the week&#8230;:)</p>
<p>Did that peak your curiosity?  Perhaps I should clarify before the rumor mill gets to churning out the latest gossip and sends everyone in the family into a tizzy&#8230;</p>
<p>Due to ongoing pain around the tooth I had rooted out back in May, I found myself back in the hot seat at my new dentist&#8217;s office three times last week.  Last Monday, I had the pleasure of meeting one more of the three dentists that practice at the <a href="http://www.myotechdental.com/">Myotech Dental Center</a>.  This was not the same doctor that helped fix the 4 cavities and the root canal issue that had surfaced prior to starting my chemotherapy.  Since Dr. Leppo was not in, Dr. Prudent and I made plans for me to return when both Dr. Leppo and Dr. Prudent could take a look at what was going on.  I was again impressed with the unbelievable bedside manner of yet another partner in that business and it completely justified my decision to divorce the dentist I had been seeing for almost 4 years.</p>
<p>There have only been four dentists up until now in my life.  My childhood dentist was imposed upon me by my parents.  I hated him.  There was something about him that really made my skin crawl.  My girls call those kind of people&#8211;&#8221;creepers&#8221;.  When I think about it&#8211;he was.  I&#8217;m sure he was a nice enough fellow, but I didn&#8217;t like him and he inflicted a great deal of pain on me during my childhood and for that&#8211;he was out.  Actually, he dumped me and opted for retirement.  When his son took over the practice, I stayed for a while.  The commute back and forth from where I lived in the cities as a young woman to the office in my hometown was just too difficult to make over a lunch hour though and so, I left him&#8211;without so much as a goodbye.  </p>
<p>For five years, I worked for an eye surgeon in the Quad Cities.  His office was right beside a dentist&#8217;s office.  One day, I decided to start up a new relationship.  I stayed with that dentist and followed him when he moved to a bigger office.  As I moved further away, the commute began to take a toll once again, but there was a bigger problem.  I hated his secretary&#8211;just couldn&#8217;t stand her&#8211;very bitchy and always looking down her nose at me&#8211;especially when I&#8217;d come in a few minutes late (as though she had never gotten stuck in traffic or dealt with kids in meltdowns).  The doctor himself was great&#8211;kind, soft spoken, gentle, and would always set my appointments for the last one in the day because he knew that I was a freaker (thanks to dentist #1).  He knew that more than anything, going to the dentist for me was a major psychological hurdle.  He knew where the exposed roots were on the two molars that had housed headgear bands during the phase in my life when I wore braces and he always stayed clear from them with his sharp tool.  I&#8217;ll never forget (I&#8217;m sure he won&#8217;t either) the day I went in to have a silver filling that had gone bad dug out and resealed.  I was a mess&#8211;couldn&#8217;t stop crying, freaking out about the drill&#8211;I mean BAD.  I was literally crawling up the back of the chair to get away.  What should have taken about 20 minutes took and hour and a half because he would stop and start and stop and start to give me some time to brace myself.  He never laughed at me.  He understood and he was patient with my freak out.  I loved him for that.  I sent the office flowers the day after.  </p>
<p>Unfortunately, I just couldn&#8217;t stand to go there and be harrassed by the secretary.  I showed up about 10 minutes late one night and she went through the roof and said I needed to pay a broken appointment fee. I had already had a bad day and I told her to shove it.  It would be different if I never showed up, but I even called in route to tell her I was on my way.  It infuriated me so much, I divorced her&#8211;on the spot.  That meant, though, that I was divorcing him too and that made me really sad because I had been with him for about 15 years and so had my kids.  I decided to find something closer to where we had just moved.  I took a coupon out of the Welcome Wagon basket that promised free exams for new patients.  Without dental insurance&#8211;that was like winning the lottery for me and my family because those new patient exams are soooo outrageously priced.  My family has been with this dentist for about four years, but we haven&#8217;t liked it.  Even so, I just can&#8217;t justify spending over a thousand dollars to get everyone in for new patient exams, x-rays and cleanings somewhere else.  So, we&#8217;ve stayed. </p>
<p>The dentist at the time was someone I personally didn&#8217;t care for.  He was patronizing and I just couldn&#8217;t stand that about him.  He actually laughed when I told him I didn&#8217;t know if I could take having any major dental work done and that I have been known to take more than 2 or 3 novacaine shots in the past because I could feel the work being done despite the anesthetic.  He would look at me incredulously and then laugh.  It made my blood boil.  I felt as though he really couldn&#8217;t care less and to him you were just a meal ticket.  The women in the office infuriated me as well and would pad the bill each time I went in for myself or my kids.  I&#8217;m always VERY SPECIFIC when it comes to dental bills because it is such a HUGE outlay of cash each 6 months that I have to budget very carefully.  The last time I went in for me I told them I needed x-rays and an exam&#8211;no cleaning, no sealant, no flouride, no extras whatsoever because I was just checking on a specific tooth (the root canal one).  I&#8217;ve learned with these women to repeat myself and make sure they have made notations on my account so when I actually do come in, there is no mistaking what I want or don&#8217;t want done.  With all the computerization that is in that office and with the prior knowledge all these women have of me and that I can get very bitchy when someone is trying to screw me out of money&#8211;you would think that there were red flags waving signaling my arrival that day.  Nope.  </p>
<p>When I went back to the examining room the hygenist took the x-ray and then proceeded to clean my teeth.  I stopped her, asked her what she was doing, and she looked at me like she had no idea what I was talking about.  I got up, walked out to the office and really got into the ladies business that is in charge of scheduling.  I remember her telling me, &#8220;Well, if she started the cleaning, then we have to charge you for the whole cleaning and so you may as well get it done&#8221;.  OH MY GOD&#8211;ARE YOU KIDDING ME?  I went nuts.  I even reminded her when I signed in that day.  Do you think she could have transferred that information to the hygenist?  I cancelled all other appointments for the rest of the year for the kids and myself&#8211;went ahead and said ENOUGH IS ENOUGH (actually, that was the nice version of what I said) and I walked out.  Before I left, I did demand all the x-rays, afterall, I paid for them over the years&#8211;why shouldn&#8217;t they give them to me?  </p>
<p>Months go by and I hadn&#8217;t found a new dental home.  I knew that wherever I landed, I wanted it to be the last one.  I wanted to feel like the people in the office and the doctors themselves didn&#8217;t just see me as a walking $$ sign.  I knew I needed to start looking, but I knew I was going to have to have work done to that upper tooth that gave me such problems.  It wasn&#8217;t until that trip out to see my grandmother in Virginia one year ago that I passed by a billboard sign in Kentucky that promoted a local dentist and said something about sedation dentistry.  I thought about it the whole way out and when I got home I started looking over the yellow pages.  There aren&#8217;t too many places that provide that service here where I live.  I would have to either travel or call an office that I always thought was geared more for patients needing dentures and dental implants.  I took a shot on the denture office and it turned out they do all sorts of tooth restoration work.  They also carried the ZOOM teeth whitening machine and I had been dying to have that done for a few years.  I remember when I first called for information and prices (before I was even diagnosed) finding out that it was in my best interest to be a patient&#8211;it would be cheaper.  Sigh.  That meant I was going to have to start shelling out some big bucks to have all that new patient work done before I could even start any work.  </p>
<p>It wasn&#8217;t long after Christmas last year that I had that fateful mammogram where I was diagnosed with breast cancer.  When that happened, everything else took a back seat and months went by before I was again faced with the need to see a dentist.  Back in April, I was told by my first oncologist that any dental work that I needed to have done would need to be done prior to starting treatment because the risk of any infection developing while my immune system was being destroyed would not be a good thing.  I knew I had one cavity and it was a bad one, so I went ahead and called this denture office to see about coming in.  I explained my situation and they got me in&#8211;no problem&#8211;no waiting.  The doctor that came in to talk to me was hands down the nicest dentist I&#8217;ve ever met.  He and I talked at length about my nerves and then discussed the x-rays and the fact that I had not one but FOUR cavities!  One was so bad it needed a root canal (that was the one in question for 6 months).  He told me the price of everything and I think I stopped breathing.  </p>
<p>Where in the world was I going to come up with about $2800 in a week (I had to have it done before my first chemo on May 7, 2009)?  I don&#8217;t carry credit cards&#8211;I figure if I don&#8217;t have the money for something, I shouldn&#8217;t be buying it, but now was one of those times I wished I had an emergency card.  To tell you the truth&#8211;I&#8217;d just be paying interest and minimum payments for God knows how long and that&#8217;s not how I operate.  I hate being &#8220;payment-ed&#8221; to death.  I was really going to have to fanagle this one.  That&#8217;s when he told me he could spread the payments out and give me 90 days same as cash.  Still a freaking lot of money, but I had to have it done AND I know of no other dentist office that will let you do that.  It included the extra $500 to put me to sleep&#8211;totally worth it in my mind and the date was set. I had to have someone drive me out to the surgical facility and hang around nearby for a few hours because I would be loopy to drive myself home. I wasn&#8217;t completely knocked out, and I can only remember bits and pieces of that afternoon.  </p>
<div id="attachment_781" class="wp-caption aligncenter" style="width: 310px"><a href="http://specificallyspeaking.wordpress.com/files/2009/12/root-canal.jpg"><img src="http://specificallyspeaking.wordpress.com/files/2009/12/root-canal.jpg?w=300" alt="" title="root canal" width="300" height="225" class="size-medium wp-image-781" /></a><p class="wp-caption-text">Taken 5-4-09  right before being put under for my root canal.</p></div>
<p>I remember the nurse putting the IV in my arm and turning on the medicine that would make me fall asleep.  </p>
<p>I remember Dr. Leppo coming in and telling me everything would be ok.  </p>
<p>I remember him giving me a warm blanket and turning on the TV. </p>
<p>I remember several times opening up my eyes and seeing him hovering over me with a lot of bright lights and he was wearing micro-surgeon&#8217;s binoculars.  He would ask me reassuringly each time if I was ok.</p>
<p>I remember my jaw aching.  </p>
<p>I remember when it was over, he got up and he walked around holding onto his back because he had been in such an awkward position for over three and a half hours.  </p>
<p>I remember telling him that I really appreciated his kind nature.</p>
<p>I remember him smiling at me very warmly and saying, &#8220;That&#8217;s what I&#8217;m here for&#8221;.  He told me I would need a crown on that tooth, but because of the placement of the cavity on that particular tooth, I would be lucky not to lose the tooth sometime in the near future.  He said it was a 50/50 shot and he made the decision to see if the root canal would do the trick.  He said it was just too bad and that the cancer was really beginning to do some damage to my teeth.  He said the tooth itself was packed full of antibiotics before being sealed.  He also told me to come back with any problems and to hang tough through the chemo.  </p>
<p>I looked at him dead on and said, &#8220;I want you to know, that if I don&#8217;t make it out of this this year, that you were one of the nicest doctors I had ever met and I was very glad to have him as part of my medical team.&#8221;  He thanked me and told me it was quite alright.  </p>
<p>It was just a couple days later when I had that encounter with the woman in the wig shop (<a href="http://specificallyspeaking.wordpress.com/2009/08/29/just-own-it/">Just Own It</a>) and that is when I made the decision to get my tattoo.  I knew that would also need to be done prior to chemo and my white cells getting killed off and I knew that all the antibiotics from the root canal would help kill off any kind of infection a tattoo might inflict.   Right before going in for my first round of chemo, I went back to Dr. Leppo.  I hadn&#8217;t been able to eat anything in a few days.  My mouth was so sore from being clamped open for so long.  I knew the other teeth he had fixed would take some getting used to chewing on again, but the side of my mouth that really had the work done was in a lot of pain.  I couldn&#8217;t take the Vicadin because I transport kids during the day and the Ibuprofen just wasn&#8217;t doing the trick.  He filed some stuff down and I went home.  It wouldn&#8217;t matter whether I had eaten or not, the day came for my first chemo and after that I wasn&#8217;t really that hungry for a while.  After about three weeks, things calmed down and I have been good since then&#8211;until a couple weeks ago.</p>
<p>I started experiencing pain on both sides of my upper jaw again.  It got to the point where I just knew I had to get it looked at.  I was worked in right away and from the initial x-rays, Dr. Leppo&#8217;s partner couldn&#8217;t tell if I had cracked the root canal tooth (with all the stress over Jasmine this summer, I had forgotten to go back for the crown), or if the tooth had two roots and one wasn&#8217;t all the way tied off or whatever they do to it.  I kept saying there was something else.  On the tooth right beside it.  It was causing me A LOT of pain.  He told me to come back on Wednesday and together, Dr. Prudent and Dr. Leppo would take a look and try to determine what was going on.  Sitting in the dentist&#8217;s chair on Wednesday, I started getting nervous.  What if the tooth has to come out.  Then I&#8217;m going to need a fake tooth.  Geez, I already have a fake boob, my face tells a nasty story with all the worry lines of what our family went through this past year, and now I am losing my teeth.  I&#8217;m just so sick of falling apart.  </p>
<p>As I waited for the doctor to come in, I mulled over a lot of stuff.  &#8220;It&#8217;s detail work now, smoothing out the kinks&#8211;ya know?&#8221;  I said to myself as convincingly as possible.  I began to think about it more along those lines and after a few moments, I made yet another decision regarding my aftercare.  As I sat there and stared at the posters for teeth whitening,  I decided I would be more specific with my New Year&#8217;s resolutions and I was going to be doubly specific with what I meant by &#8220;This year I&#8217;m going to work on Me&#8221; (my resolution last year&#8211;and way to generic and vague).  As far as my teeth were concerned, I was going to fix my teeth and get them back into a stable state and then I was going to ZOOM them.  A little cosmetic pick me up for the new year.  If my smile were to dazzle everyone, perhaps they wouldn&#8217;t see the wrinkles that were forming, the gray hair that was just beginning to grow in, the extra 30 pounds I was sporting, or the cyclops boob that was expanding on my chest.  </p>
<p>I know its all superficial&#8211;it&#8217;s not what truly counts&#8211;but dammit, I need a makeover in the worst way.  I decided that&#8230;</p>
<p>I would go and get my hair re-colored&#8211;I&#8217;ve tried my new natural color for six months now and it&#8217;s just not happening.  I&#8217;ve tried rocking the lesbian chic look and I&#8217;m not sure I&#8217;m pulling it off.  LOL.</p>
<p>I&#8217;m going to take myself over to the little nail salon by my house and get a much needed mani/pedi.  </p>
<p>I am going to commit to my nutrition program and stop talking about the extra 30 pounds&#8211;instead&#8211;I&#8217;m going to do something about them.  I&#8217;m going to work my ass off&#8211;literally.  I want to sign up to learn how to dance salsa.  That should burn a few calories.</p>
<p>I&#8217;m going to get ready for my next surgery where the expander will be taken out of my chest and an implant will be inserted and I will have the other side lifted.  I will contemplate a matching implant for the left side and a nipple reconstruction for the right side&#8211;something I&#8217;ve not been sold on yet.  </p>
<p>I am going to go get a spray tan&#8211;for the hell of it.  I always feel better with a little color in my skin and since I&#8217;m terrified of burning my chest in a tanning bed and not feeling it because all the nerves have been severed&#8211;I am going to go get airbrushed&#8211;just because.  Period.  Maybe they can spray on a six pack for me&#8211;haha&#8211;afterall, I&#8217;ve often heard that you should post a picture of your goal on the fridge to remind you of what your working for.  I&#8217;ll just post my pic on my gut.</p>
<p>Lastly, I&#8217;m getting a massage.  I need one.  I&#8217;ve been terrified of getting one after what I was told back in February (that massage helps the drain the lymphatic system and that getting a massage when you have invasive cancer could possible send any free radicals bee-lining for a new host location to set up shop).  I need one though&#8211;not want one&#8211;NEED ONE!  Too much stress buildup over this year.  </p>
<p>I need to stop pouring so much of me into everyone else all the time and carve out time to pour back into me.  I just have to be a little selfish.  Period.  I&#8217;ve neglected me for too long.  I had been expanding my mind, but forgot about all the other stuff and as you get older it&#8217;s important to look at the whole picture&#8211;or pieces of the picture start to get torn and that&#8217;s what was happening to me.</p>
<p>All of a sudden, Dr. Leppo walked in beaming.  He was genuinely happy to see me.  He said to me, &#8220;You made it!&#8211;That deserves a hug!&#8221;  He came over and hugged me and then sat down to talk to me.  I said, &#8220;I&#8217;m alive&#8221;!  and we spent a few minutes catching up on how the year has gone.  It was like talking to an old friend I hadn&#8217;t seen in years.  Our attention turned to my teeth and we came to the conclusion that I really needed a whole new set of x-rays to see the damage that the chemo has done to my teeth.  </p>
<p>&#8220;What kind of damage does chemo do to your teeth?&#8221;  I asked.</p>
<p>&#8220;Well, it&#8217;s not really the chemo as much as it is the fact that chemo dries your mouth out and as a result of an extremely dry mouth, you don&#8217;t have the saliva needed to keep your gum tissue healthy which can also contribute to dental carries.  Without saliva,  there&#8217;s nothing to wash the sugars away&#8221; he said.  Thankfully, I didn&#8217;t really experience any major side effects except having my hair fall out and going into respiratory arrest&#8211;nothing major&#8211;yeah, right&#8211;so, a few cavities is nothing in comparison, right?  It still didn&#8217;t explain the pain, though.  </p>
<p>I told him I had tried to schedule a new patient cleaning, exam, and x-rays, but was told the first appointment wouldn&#8217;t be until the end of March.  He and his assistant looked through everything and because we had been hit with such a snow storm the previous week, there were many cancellations from people not wanting to drive into town.  I was scheduled for the next day and as I left, I was told that there was no charge for my office visit for the second time that week.  I couldn&#8217;t help but think that I had found my new dental home.</p>
<p>The next day brought a lot of anxiety for me.  I was going to have to go through all the poking with that sharp little instrument I hate so much.  All the scraping on my silver fillings that sends shivers through my spine and sounds like nails on a chalkboard.  I was going to have to pray my new hygenist would be mindful of the exposed roots on the upper back molars and I would have to really hold on to the hope that I hadn&#8217;t cracked my tooth and the underlying problem was, in fact, due to something else.  I couldn&#8217;t have been more put at ease.  The two girls that worked on me were soooo nice!  They answered all my questions about water picks, sonic toothbrushes, and teeth whitening.  One talked to me about my cancer and asked quite frankly what I was thinking when I realized that I was really going to have to have my boob cut off (she&#8217;s young).  It didn&#8217;t shock me, and I&#8217;d rather someone just come out and ask me those kinds of questions then just whisper behind my back.  She asked if I was contemplating reconstruction and I had to laugh inwardly&#8211;did she not see this huge cyclops boob on my chest?  Did she just think that was the silhouette of my real boob and since it overshadowed the actual real one that the left side must be the side I had cut off because it really looks pathetic over there now. Then she told me she just had an augmentation and that&#8217;s when I asked her a bunch of questions&#8211;especially&#8211;silicone or saline?  That&#8217;s the question that weighs heavily on my mind these days.</p>
<p>Dr. Leppo came in again and looked through all the x-rays.  Turns out I have two old silver fillings that are lifting up and causing me great pain since stuff is getting in there.  They&#8217;ll need to be dug out and replaced.  I hate the thought of it, but am secretly glad to get rid of all the silver in my mouth.  It turns the color of my teeth gray and I hate it.  So, I&#8217;ll get them replaced with enamel colored fillings and that should help the discoloration on that side.  We&#8217;ll start working on replacing all of them since they seem to be really wearing out&#8211;but we&#8217;ll do it slowly and as I can afford to do so and about that root canal tooth&#8211;well, it&#8217;s still too hard to determine just what is going on with it, but I do have a cavity butted right up beside it and it could just be pain radiating throughout that entire area. </p>
<p>We talked about the possibility that once the cavity is filled, I find out that I&#8217;m still having pain and that it really is the root canal tooth.  We talked about extracting it and having an implant put in.  I freaked.  I don&#8217;t know a lot about that&#8211;my parents always had partials&#8211;these things that they put into their mouths in the morning and took out at night to brush and soak.  On their website their is a tiny flash video of how they use a screw to anchor in the implant&#8211;it acts like a metal root.  &#8220;God, I totally do not want to do this&#8221;, I prayed and then quickly proceeded to put it into context&#8211;&#8221;Chris, you had your boob cut off this year.  If you can do that, then you can handle a tooth implant screwed into your jaw&#8221;.  Dr. Leppo reminded me it may not come to that.  I was worried about how much that was going to cost.  We never did get specifics, but he did say he would apply all the money I had paid for the root canal toward the implant.  He told me he would stand behind his work and if it didn&#8217;t work, then he would reimburse me.  Have I mentioned lately, that I love him?  He knows just what to say to help get me through all this and for me it all boils down to pain and money.  How much pain do I have to endure and how much is that pain going to cost me. </p>
<p>We talked about doing all the work at once and again I started to panic.  We came to the agreement that I would get the middle sedation treatment&#8211;a pill that would make me super relaxed&#8211;and if I needed laughing gas&#8211;he&#8217;d give me that as needed.  I&#8217;ve spent almost my entire adult life not relying on drugs or meds for things and this year, I have decided&#8211;they really come in handy!  I wasn&#8217;t going to do it all at once, but it sure beats having to get super freaked more than one time.  I also can&#8217;t stand to take off 2 or 3 afternoons to get it all done.  So, we scheduled it for over a naptime where I could feed the kids and have a sub come in to help&#8211;mostly just to make sure they nap soundly.  The effects of the meds should wear off farely quickly after the procedure and thankfully, my daughters will be home to help me out should I need it with the rest of the afternoon.  The 29th of December is the day and I am not looking forward to it.  I paid for half the visit (which was supposed to be $350 and they only charged me $219&#8211;another score in my book) and I made arrangements to put the balance with the total from the 29th (about $700) on a 3-pay again.  Hard to come up with all that during Christmas, but I just have to keep plowing ahead.   I can&#8217;t think about it or I&#8217;ll get stressed.  It just bites because I just registered for school to retake a couple classes.  These are on my dime.  I just got that bill and now I realize why I signed onto that scholarship program (note to self&#8211;never let another class slide).  Sigh.  It&#8217;s always something.  Anyway, here&#8217;s my super nice dentist and if any of you are wanting to make a switch to their office in Moline, make sure you tell them I sent you.  They have an incentive program for referrals and one of them is a massage&#8211;I mentioned earlier how much I needed one, right?</p>
<div id="attachment_772" class="wp-caption aligncenter" style="width: 235px"><a href="http://specificallyspeaking.wordpress.com/files/2009/12/0011.jpg"><img src="http://specificallyspeaking.wordpress.com/files/2009/12/0011.jpg?w=225" alt="" title="001" width="225" height="300" class="size-medium wp-image-772" /></a><p class="wp-caption-text">Dr. Leppo</p></div>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Routing Forever on an Expander Graph]]></title>
<link>http://rjlipton.wordpress.com/2009/12/06/routing-forever-on-an-expander-graph/</link>
<pubDate>Sun, 06 Dec 2009 15:04:49 +0000</pubDate>
<dc:creator>rjlipton</dc:creator>
<guid>http://rjlipton.wordpress.com/2009/12/06/routing-forever-on-an-expander-graph/</guid>
<description><![CDATA[Can one route requests forever on an expander graph? Noga Alon is one of greatest combinatorial expe]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><font color="”#0066cc?"><br />
<em> Can one route requests forever on an expander graph? </em><br />
<font color="”#000000?"></p>
<p><a href="http://rjlipton.wordpress.com/files/2009/12/images1.jpeg"><img src="http://rjlipton.wordpress.com/files/2009/12/images1.jpeg" alt="" title="images" width="93" height="123" class="alignright size-full wp-image-3968" /></a></p>
<p>
Noga Alon is one of greatest combinatorial experts in the world. He has won many awards and has made countless contributions to almost all aspects of combinatorics and theory.</p>
<p>
Today I want to talk about a problem that occurred to me after listening to his talk at our recent <a href="http://rjlipton.wordpress.com/2009/10/27/highlights-of-focs-theory-day/">theory day</a>. It concerns a neat result that he has on routing on expander graphs.</p>
<p>
 <!--more--></p>
<p><b> On-line Routing on Expanders </b></p>
<p><p>
Alon and Michael Capalbo have a pretty <a href="http://www.cs.tau.ac.il/~nogaa/PDFS/expaths2.pdf">paper</a> on routing on sufficiently strong expanders. Let&#8217;s call them AC&#8212;not to be confused with the complexity class. Suppose that <img src='http://l.wordpress.com/latex.php?latex=%7BG%7D%26%2338%3Bfg%3D000000&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='{G}&amp;fg=000000' title='{G}&amp;fg=000000' class='latex' /> is an <img src='http://l.wordpress.com/latex.php?latex=%7Bn%7D%26%2338%3Bfg%3D000000&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='{n}&amp;fg=000000' title='{n}&amp;fg=000000' class='latex' /> vertex graph that is a <i>strong</i> expander&#8212;for now just think an expander. Then, they consider the following natural routing game. There are two players, the <i>requester</i> and the <i>router</i>. The requester is allowed to make a request of the form <img src='http://l.wordpress.com/latex.php?latex=%7B%28s%2Ct%29%7D%26%2338%3Bfg%3D000000&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='{(s,t)}&amp;fg=000000' title='{(s,t)}&amp;fg=000000' class='latex' /> where <img src='http://l.wordpress.com/latex.php?latex=%7Bs%7D%26%2338%3Bfg%3D000000&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='{s}&amp;fg=000000' title='{s}&amp;fg=000000' class='latex' /> and <img src='http://l.wordpress.com/latex.php?latex=%7Bt%7D%26%2338%3Bfg%3D000000&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='{t}&amp;fg=000000' title='{t}&amp;fg=000000' class='latex' /> are vertices of the graph <img src='http://l.wordpress.com/latex.php?latex=%7BG%7D%26%2338%3Bfg%3D000000&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='{G}&amp;fg=000000' title='{G}&amp;fg=000000' class='latex' />. The router must then find a path from <img src='http://l.wordpress.com/latex.php?latex=%7Bs%7D%26%2338%3Bfg%3D000000&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='{s}&amp;fg=000000' title='{s}&amp;fg=000000' class='latex' /> to <img src='http://l.wordpress.com/latex.php?latex=%7Bt%7D%26%2338%3Bfg%3D000000&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='{t}&amp;fg=000000' title='{t}&amp;fg=000000' class='latex' /> in the graph. We will say that all the edges on this path are in <i>use</i>. Think of edges as network links that can only carry one &#8220;conversation&#8217; at a time. The game allows the requester to continue to make one request after another. The router must satisfy each request as it is made. Of course the router can only use edges that are not in use: thus, once an edge is used for a request it cannot be part of another path in the future.</p>
<p>
Further the router has no knowledge of the future requests that are going to be made&#8212;it is solving an on-line game. This is what makes the game both realistic and interesting. The goal of the router, of course, is to never fail&#8212;to always be able to handle the requests.</p>
<p>
There are two simple restrictions on the requester. First, the requester is restricted to make requests such that each vertex appears as a source or sink of a request at most once.</p>
<p>
Note, AC, remember that&#8217;s Alon and Capalbo, are able to relax this quite a bit, but some restriction is needed. Otherwise, just make <img src='http://l.wordpress.com/latex.php?latex=%7Bd%2B1%7D%26%2338%3Bfg%3D000000&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='{d+1}&amp;fg=000000' title='{d+1}&amp;fg=000000' class='latex' /> requests using the same vertex <img src='http://l.wordpress.com/latex.php?latex=%7Bs%7D%26%2338%3Bfg%3D000000&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='{s}&amp;fg=000000' title='{s}&amp;fg=000000' class='latex' /> of degree <img src='http://l.wordpress.com/latex.php?latex=%7Bd%7D%26%2338%3Bfg%3D000000&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='{d}&amp;fg=000000' title='{d}&amp;fg=000000' class='latex' /> and the router must fail. Second, the requester is limited to a total of some <img src='http://l.wordpress.com/latex.php?latex=%7Bm%7D%26%2338%3Bfg%3D000000&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='{m}&amp;fg=000000' title='{m}&amp;fg=000000' class='latex' /> requests. This is also natural. Otherwise, since edges can only be used once the router would fail for the simple reason that all the edges are gone. The question is how many requests can the router handle? Their beautiful result is: </p>
<blockquote><p><b>Theorem: </b> <em> On any strong expander, there is a deterministic strategy that can successfully route any <img src='http://l.wordpress.com/latex.php?latex=%7BO%28n%2F%5Clog+n%29%7D%26%2338%3Bbg%3De8e8e8%26%2338%3Bfg%3D000000&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='{O(n/\log n)}&amp;bg=e8e8e8&amp;fg=000000' title='{O(n/\log n)}&amp;bg=e8e8e8&amp;fg=000000' class='latex' /> number of requests. </em></p></blockquote>
<p>This is essentially optimal, since on average the paths with be of length <img src='http://l.wordpress.com/latex.php?latex=%7B%5COmega%28%5Clog+n%29%7D%26%2338%3Bfg%3D000000&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='{\Omega(\log n)}&amp;fg=000000' title='{\Omega(\log n)}&amp;fg=000000' class='latex' />, and so any more requests would potentially use up all the edges. See their paper for the exact definition of strong expander.</p>
<p>
The proof of the result is quite neat and involves some clever maintenance of a core partial expander with a special structure. Note, prior to this result there were weaker bounds. For example, Alan Frieze has an off-line randomized <a href="http://portal.acm.org/citation.cfm?id=338219.338631">algorithm</a> with the same bound on the number of requests. AC get the optimal bound, their algorithm is deterministic, and also it is on-line: the router is able to make the decisions as they come&#8212;a very realistic assumption.</p>
<p>
<p><b> Routing Forever </b></p>
<p><p>
After theory day I soon thought about how to improve AC&#8217;s theorem. Why not see if there could be a router that could handle requests <i>forever</i>? Of course, this is impossible, since the router must run out of edges eventually.</p>
<p>
But wait. Let&#8217;s change the game as follows. The requester cannot expect the router to handle more than order <img src='http://l.wordpress.com/latex.php?latex=m%3D%7BO%28n%2F%5Clog+n%29%7D%26%2338%3Bfg%3D000000&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='m={O(n/\log n)}&amp;fg=000000' title='m={O(n/\log n)}&amp;fg=000000' class='latex' /> requests. Thus, let&#8217;s have the requester have a new ability: the requester is allowed to ask the router to <i>release</i> a previous request. This will free up the edges that the router used to fill that request. </p>
<p>
The question now is simple: Suppose that at no time are there more than <img src='http://l.wordpress.com/latex.php?latex=%7Bm%7D%26%2338%3Bfg%3D000000&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='{m}&amp;fg=000000' title='{m}&amp;fg=000000' class='latex' /> requests that have not been released. Can the router go on forever? Or must it eventually get stuck?</p>
<p>
I have thought about this with my graduate students, especially Atish Das Sarma, Subrahmanyam Kalyanasundaram, and Danupon Nanongkai. We cannot prove that there is a forever router, nor can we prove that none exists. The difficulty is that even though the there are no more than <img src='http://l.wordpress.com/latex.php?latex=%7BO%28n%2F%5Clog+n%29%7D%26%2338%3Bfg%3D000000&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='{O(n/\log n)}&amp;fg=000000' title='{O(n/\log n)}&amp;fg=000000' class='latex' /> active requests, the requests and releases can be asked for in an adversarial manner. The requester could perhaps force the router to make a &#8220;bad&#8221; choice, then release some requests, and by repeating this over and over eventually get the router into a bad state. </p>
<p>
We were able to prove the following special case:</p>
<blockquote><p><b>Theorem: </b> <em> On any sufficiently strong expander, there is a deterministic strategy that can successfully route <b>forever</b>, provided the requests are released in a FIFO order, where the FIFO is length order <img src='http://l.wordpress.com/latex.php?latex=%7Bm%7D%26%2338%3Bbg%3De8e8e8%26%2338%3Bfg%3D000000&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='{m}&amp;bg=e8e8e8&amp;fg=000000' title='{m}&amp;bg=e8e8e8&amp;fg=000000' class='latex' />. </em></p></blockquote>
<p> Thus, as the requests come in they are placed in a FIFO of length <img src='http://l.wordpress.com/latex.php?latex=m%3D%7BO%28n%2F%5Clog+n%29%7D%26%2338%3Bfg%3D000000&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='m={O(n/\log n)}&amp;fg=000000' title='m={O(n/\log n)}&amp;fg=000000' class='latex' />. Once the FIFO is full the next request forces the oldest request to be released. This is a pretty realistic model&#8212;it seems reasonable that old connections are eventually released.</p>
<p>
The proof of this theorem uses AC&#8217;s result. We tried to redo their proof for this theorem, but finally realized that a very simple strategy would work, and we only needed to use their router&#8217;s strategy as a black-box. </p>
<p>
We imagine that our expander is strong enough to contain two strong expanders on the same <img src='http://l.wordpress.com/latex.php?latex=%7Bn%7D%26%2338%3Bfg%3D000000&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='{n}&amp;fg=000000' title='{n}&amp;fg=000000' class='latex' /> vertices. Each of the expanders is strong enough in the sense of AC&#8217;s theorem. Call the first expander the &#8220;top&#8221; and the other the &#8220;bottom&#8221; expander. Also, we assume that the router knows which edges are from each expander.</p>
<p>
The routing strategy is simple: Initially both expanders have no paths. On the first <img src='http://l.wordpress.com/latex.php?latex=%7Bm%3DO%28n%2F%5Clog+n%29%7D%26%2338%3Bfg%3D000000&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='{m=O(n/\log n)}&amp;fg=000000' title='{m=O(n/\log n)}&amp;fg=000000' class='latex' /> requests use the top expander to handle all the requests. Follow AC&#8217;s strategy here. Then switch to the bottom expander. Again use AC&#8217;s strategy here for the next <img src='http://l.wordpress.com/latex.php?latex=%7Bm%7D%26%2338%3Bfg%3D000000&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='{m}&amp;fg=000000' title='{m}&amp;fg=000000' class='latex' /> requests. Then, switch to the top expander. The key point is that by now all the requests there have been released. Thus, the expander is &#8220;clean&#8221; and we can again use AC&#8217;s strategy there. This goes on forever switching between the two expanders.</p>
<p>
Its a pretty simple idea. But, it shows that there is some hope that routing can be done forever. Actually at first we thought the FIFO order might even be the worst case. Note, even if one request is allowed to stay for a very long time, then when we switch to the top expander it will not be &#8220;clean&#8221; and AC&#8217;s strategy does not apply.</p>
<p>
A final comment. Instead of requiring the expander to have two copies of a strong expander, the same result would follow if we allowed each edge to be used at most twice. Thus, in network terms if each edge/link had the capacity to carry two conversations, then our router can route forever. </p>
<p>Finally, we have several ideas and other partial results, some of which we hope could help us generalize the above result substantially. More on this in the future.</p>
<p>
<p><b> Open Problems </b></p>
<p><p>
Does there exist a forever router that can handle non-FIFO releases?</p>
<p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Display Hierarchical Data in List view  using Nested Controls]]></title>
<link>http://zamjad.wordpress.com/2009/11/20/display-hierarchical-data-in-list-view-using-nested-controls/</link>
<pubDate>Sat, 21 Nov 2009 04:49:18 +0000</pubDate>
<dc:creator>zamjad</dc:creator>
<guid>http://zamjad.wordpress.com/2009/11/20/display-hierarchical-data-in-list-view-using-nested-controls/</guid>
<description><![CDATA[&#160; If we have a simple grid form of data then we can simply display it in list view. We can even]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>&#160;</p>
<p>If we have a simple grid form of data then we can simply display it in list view. We can even further customize the display of our data by using data template and display in different controls such as check box, text block etc. </p>
<p>If we have hierarchical data, such as the state information and list of big cities in each state then we can display this in the form of nested combo box inside the list view. </p>
<p>First we have to change our data structure. Now our class contains not only simple data, but also list of string to store more than one big cities in each state. Here is our class look like. </p>
<pre style="border-bottom:#cecece 1px solid;border-left:#cecece 1px solid;background-color:#fbfbfb;min-height:40px;width:450px;overflow:auto;border-top:#cecece 1px solid;border-right:#cecece 1px solid;padding:5px;">
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  1:     <span style="color:#0000ff;">public</span> <span style="color:#0000ff;">class</span> StateInfo
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  2:     {
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  3:         <span style="color:#0000ff;">private</span> List&#60;String&#62; list;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  4:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  5:         <span style="color:#0000ff;">public</span> StateInfo()
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  6:         {
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  7:         }
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  8:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  9:         <span style="color:#0000ff;">public</span> StateInfo(String name, String capital, String nickName, String timeZone, Boolean visited)
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 10:         {
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 11:             Name = name;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 12:             Capital = capital;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 13:             NickName = nickName;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 14:             TimeZone = timeZone;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 15:             Visited = visited;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 16:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 17:             list = <span style="color:#0000ff;">new</span> List&#60;<span style="color:#0000ff;">string</span>&#62;();
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 18:         }
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 19:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 20:         <span style="color:#0000ff;">public</span> String Name
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 21:         { <span style="color:#0000ff;">get</span>; <span style="color:#0000ff;">set</span>; }
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 22:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 23:         <span style="color:#0000ff;">public</span> String Capital
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 24:         { <span style="color:#0000ff;">get</span>; <span style="color:#0000ff;">set</span>; }
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 25:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 26:         <span style="color:#0000ff;">public</span> String NickName
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 27:         { <span style="color:#0000ff;">get</span>; <span style="color:#0000ff;">set</span>; }
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 28:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 29:         <span style="color:#0000ff;">public</span> String TimeZone
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 30:         { <span style="color:#0000ff;">get</span>; <span style="color:#0000ff;">set</span>; }
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 31:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 32:         <span style="color:#0000ff;">public</span> Boolean Visited
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 33:         { <span style="color:#0000ff;">get</span>; <span style="color:#0000ff;">set</span>; }
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 34:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 35:         <span style="color:#0000ff;">public</span> List&#60;String&#62; Cities
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 36:         {
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 37:             <span style="color:#0000ff;">get</span> { <span style="color:#0000ff;">return</span> list; }
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 38:             <span style="color:#0000ff;">set</span> { list = <span style="color:#0000ff;">value</span>; }
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 39:         }
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 40:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 41:     }
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 42: </pre>
</pre>
<p>Now we are going to populate some data in this class. In this example we are inserting data by code, but it can be loaded by database, LINQ or any other techniques. Here is an example of inserting data in this data structure.</p>
<pre style="border-bottom:#cecece 1px solid;border-left:#cecece 1px solid;background-color:#fbfbfb;min-height:40px;width:450px;overflow:auto;border-top:#cecece 1px solid;border-right:#cecece 1px solid;padding:5px;">
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  1: List&#60;StateInfo&#62; statesList = <span style="color:#0000ff;">new</span> List&#60;StateInfo&#62;();
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  2:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  3: StateInfo s1 = <span style="color:#0000ff;">new</span> StateInfo();
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  4: s1.Name = &#34;<span style="color:#8b0000;">Maryland</span>&#34;;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  5: s1.Capital = &#34;<span style="color:#8b0000;">Annapolis</span>&#34;;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  6: s1.NickName = &#34;<span style="color:#8b0000;">Old Line State</span>&#34;;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  7: s1.Visited = <span style="color:#0000ff;">true</span>;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  8: List&#60;String&#62; s1List = <span style="color:#0000ff;">new</span> List&#60;<span style="color:#0000ff;">string</span>&#62;();
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  9: s1List.Add(&#34;<span style="color:#8b0000;">Frederick</span>&#34;);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 10: s1List.Add(&#34;<span style="color:#8b0000;">Baltimore</span>&#34;);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 11: s1List.Add(&#34;<span style="color:#8b0000;">Rockville</span>&#34;);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 12: s1List.Add(&#34;<span style="color:#8b0000;">Hagerstown</span>&#34;);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 13: s1.Cities = s1List;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 14: statesList.Add(s1);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 15:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 16: StateInfo s2 = <span style="color:#0000ff;">new</span> StateInfo();
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 17: s2.Name = &#34;<span style="color:#8b0000;">California</span>&#34;;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 18: s2.Capital = &#34;<span style="color:#8b0000;">Sacramento</span>&#34;;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 19: s2.NickName = &#34;<span style="color:#8b0000;">Golden State</span>&#34;;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 20: s2.Visited = <span style="color:#0000ff;">true</span>;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 21: List&#60;String&#62; s2List = <span style="color:#0000ff;">new</span> List&#60;<span style="color:#0000ff;">string</span>&#62;();
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 22: s2List.Add(&#34;<span style="color:#8b0000;">Los Angeles</span>&#34;);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 23: s2List.Add(&#34;<span style="color:#8b0000;">San Franscico</span>&#34;);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 24: s2List.Add(&#34;<span style="color:#8b0000;">San Deiago</span>&#34;);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 25: s2List.Add(&#34;<span style="color:#8b0000;">San Jose</span>&#34;);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 26: s2List.Add(&#34;<span style="color:#8b0000;">Fresno</span>&#34;);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 27: s2List.Add(&#34;<span style="color:#8b0000;">Long Beach</span>&#34;);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 28: s2.Cities = s2List;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 29: statesList.Add(s2);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 30:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 31: StateInfo s3 = <span style="color:#0000ff;">new</span> StateInfo();
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 32: s3.Name = &#34;<span style="color:#8b0000;">Taxes</span>&#34;;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 33: s3.Capital = &#34;<span style="color:#8b0000;">Austin</span>&#34;;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 34: s3.NickName = &#34;<span style="color:#8b0000;">Lone Star State</span>&#34;;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 35: s3.Visited = <span style="color:#0000ff;">true</span>;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 36: List&#60;String&#62; s3List = <span style="color:#0000ff;">new</span> List&#60;<span style="color:#0000ff;">string</span>&#62;();
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 37: s3List.Add(&#34;<span style="color:#8b0000;">Houston</span>&#34;);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 38: s3List.Add(&#34;<span style="color:#8b0000;">Dallas</span>&#34;);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 39: s3List.Add(&#34;<span style="color:#8b0000;">San Antonio</span>&#34;);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 40: s3List.Add(&#34;<span style="color:#8b0000;">El Paso</span>&#34;);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 41: s3.Cities = s3List;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 42: statesList.Add(s3);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 43:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 44: StateInfo s4 = <span style="color:#0000ff;">new</span> StateInfo();
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 45: s4.Name = &#34;<span style="color:#8b0000;">Ohio</span>&#34;;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 46: s4.Capital = &#34;<span style="color:#8b0000;">Columbus</span>&#34;;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 47: s4.NickName = &#34;<span style="color:#8b0000;">Buckeye State</span>&#34;;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 48: s4.Visited = <span style="color:#0000ff;">false</span>;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 49: List&#60;String&#62; s4List = <span style="color:#0000ff;">new</span> List&#60;String&#62;();
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 50: s4List.Add(&#34;<span style="color:#8b0000;">Cleveland</span>&#34;);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 51: s4List.Add(&#34;<span style="color:#8b0000;">Cincinnati</span>&#34;);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 52: s4.Cities = s4List;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 53: statesList.Add(s4);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 54:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 55: StateInfo s5 = <span style="color:#0000ff;">new</span> StateInfo();
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 56: s5.Name = &#34;<span style="color:#8b0000;">Florida</span>&#34;;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 57: s5.Capital = &#34;<span style="color:#8b0000;">Tallahassee</span>&#34;;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 58: s5.NickName = &#34;<span style="color:#8b0000;">Sunshine State</span>&#34;;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 59: s5.Visited = <span style="color:#0000ff;">false</span>;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 60: List&#60;String&#62; s5List = <span style="color:#0000ff;">new</span> List&#60;<span style="color:#0000ff;">string</span>&#62;();
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 61: s5List.Add(&#34;<span style="color:#8b0000;">Miami</span>&#34;);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 62: s5List.Add(&#34;<span style="color:#8b0000;">Jacksonville</span>&#34;);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 63: s5List.Add(&#34;<span style="color:#8b0000;">Tampa</span>&#34;);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 64: s5.Cities = s5List;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 65: statesList.Add(s5);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 66: </pre>
</pre>
<p>At XAML side we define one check box to display the Boolean variable. </p>
<pre style="border-bottom:#cecece 1px solid;border-left:#cecece 1px solid;background-color:#fbfbfb;min-height:40px;width:450px;overflow:auto;border-top:#cecece 1px solid;border-right:#cecece 1px solid;padding:5px;">
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  1: <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">GridViewColumn</span> <span style="color:#ff0000;">Width</span>=<span style="color:#0000ff;">&#34;Auto&#34;</span> <span style="color:#ff0000;">Header</span>=<span style="color:#0000ff;">&#34;Visited&#34;</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  2: 	<span style="color:#0000ff;">&#60;</span><span style="color:#800000;">GridViewColumn.CellTemplate</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  3: 		<span style="color:#0000ff;">&#60;</span><span style="color:#800000;">DataTemplate</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  4: 			<span style="color:#0000ff;">&#60;</span><span style="color:#800000;">CheckBox</span> <span style="color:#ff0000;">IsChecked</span>=<span style="color:#0000ff;">&#34;{Binding Visited}&#34;</span><span style="color:#0000ff;">/&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  5: 		<span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">DataTemplate</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  6: 	<span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">GridViewColumn.CellTemplate</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  7: <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">GridViewColumn</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  8: </pre>
</pre>
<p>Similarly we define one more data template to define the cities list in combo box. </p>
<pre style="border-bottom:#cecece 1px solid;border-left:#cecece 1px solid;background-color:#fbfbfb;min-height:40px;width:450px;overflow:auto;border-top:#cecece 1px solid;border-right:#cecece 1px solid;padding:5px;">
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  1: <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">GridViewColumn</span> <span style="color:#ff0000;">Width</span>=<span style="color:#0000ff;">&#34;100&#34;</span> <span style="color:#ff0000;">Header</span>=<span style="color:#0000ff;">&#34;Cities&#34;</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  2: 	<span style="color:#0000ff;">&#60;</span><span style="color:#800000;">GridViewColumn.CellTemplate</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  3: 		<span style="color:#0000ff;">&#60;</span><span style="color:#800000;">DataTemplate</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  4: 			<span style="color:#0000ff;">&#60;</span><span style="color:#800000;">ComboBox</span> <span style="color:#ff0000;">Width</span>=<span style="color:#0000ff;">&#34;75&#34;</span> <span style="color:#ff0000;">ItemsSource</span>=<span style="color:#0000ff;">&#34;{Binding Cities}&#34;</span><span style="color:#0000ff;">/&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  5: 		<span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">DataTemplate</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  6: 	<span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">GridViewColumn.CellTemplate</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  7: <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">GridViewColumn</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  8: </pre>
</pre>
<p>Rest of the code is quite straight forward. Here is complete XAML code of this project.</p>
<pre style="border-bottom:#cecece 1px solid;border-left:#cecece 1px solid;background-color:#fbfbfb;min-height:40px;width:450px;overflow:auto;border-top:#cecece 1px solid;border-right:#cecece 1px solid;padding:5px;">
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  1: <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">Window</span> <span style="color:#ff0000;">x</span>:<span style="color:#ff0000;">Class</span>=<span style="color:#0000ff;">&#34;UIElement.Window1&#34;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  2:     <span style="color:#ff0000;">xmlns</span>=<span style="color:#0000ff;">&#34;http://schemas.microsoft.com/winfx/2006/xaml/presentation&#34;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  3:     <span style="color:#ff0000;">xmlns</span>:<span style="color:#ff0000;">x</span>=<span style="color:#0000ff;">&#34;http://schemas.microsoft.com/winfx/2006/xaml&#34;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  4:     <span style="color:#ff0000;">xmlns</span>:<span style="color:#ff0000;">local</span>=<span style="color:#0000ff;">&#34;clr-namespace:UIElement&#34;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  5:     <span style="color:#ff0000;">Title</span>=<span style="color:#0000ff;">&#34;ListView Example&#34;</span> <span style="color:#ff0000;">Height</span>=<span style="color:#0000ff;">&#34;300&#34;</span> <span style="color:#ff0000;">Width</span>=<span style="color:#0000ff;">&#34;525&#34;</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  6:     <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">Window.Resources</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  7:         <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">Style</span> <span style="color:#ff0000;">x</span>:<span style="color:#ff0000;">Key</span>=<span style="color:#0000ff;">&#34;myStyle&#34;</span> <span style="color:#ff0000;">TargetType</span>=<span style="color:#0000ff;">&#34;{x:Type ListViewItem}&#34;</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  8:             <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">Setter</span> <span style="color:#ff0000;">Property</span>=<span style="color:#0000ff;">&#34;Background&#34;</span> <span style="color:#ff0000;">Value</span>=<span style="color:#0000ff;">&#34;AliceBlue&#34;</span><span style="color:#0000ff;">/&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  9:             <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">Setter</span> <span style="color:#ff0000;">Property</span>=<span style="color:#0000ff;">&#34;FontSize&#34;</span> <span style="color:#ff0000;">Value</span>=<span style="color:#0000ff;">&#34;14&#34;</span><span style="color:#0000ff;">/&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 10:             <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">Setter</span> <span style="color:#ff0000;">Property</span>=<span style="color:#0000ff;">&#34;Foreground&#34;</span> <span style="color:#ff0000;">Value</span>=<span style="color:#0000ff;">&#34;Green&#34;</span><span style="color:#0000ff;">/&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 11:         <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">Style</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 12:     <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">Window.Resources</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 13:     <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">Grid</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 14:         <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">ListView</span> <span style="color:#ff0000;">ItemContainerStyle</span>=<span style="color:#0000ff;">&#34;{StaticResource myStyle}&#34;</span> <span style="color:#ff0000;">Name</span>=<span style="color:#0000ff;">&#34;list&#34;</span> <span style="color:#ff0000;">Margin</span>=<span style="color:#0000ff;">&#34;5&#34;</span> <span style="color:#ff0000;">HorizontalContentAlignment</span>=<span style="color:#0000ff;">&#34;Stretch&#34;</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 15:             <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">ListView.View</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 16:                 <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">GridView</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 17:                     <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">GridView.ColumnHeaderTemplate</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 18:                         <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">DataTemplate</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 19:                             <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">Border</span> <span style="color:#ff0000;">BorderBrush</span>=<span style="color:#0000ff;">&#34;Brown&#34;</span> <span style="color:#ff0000;">BorderThickness</span>=<span style="color:#0000ff;">&#34;2&#34;</span> <span style="color:#ff0000;">CornerRadius</span>=<span style="color:#0000ff;">&#34;5&#34;</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 20:                                 <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">Border.Background</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 21:                                     <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">LinearGradientBrush</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 22:                                         <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">GradientStop</span> <span style="color:#ff0000;">Offset</span>=<span style="color:#0000ff;">&#34;0&#34;</span> <span style="color:#ff0000;">Color</span>=<span style="color:#0000ff;">&#34;Wheat&#34;</span><span style="color:#0000ff;">/&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 23:                                         <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">GradientStop</span> <span style="color:#ff0000;">Offset</span>=<span style="color:#0000ff;">&#34;1&#34;</span> <span style="color:#ff0000;">Color</span>=<span style="color:#0000ff;">&#34;LightCoral&#34;</span><span style="color:#0000ff;">/&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 24:                                     <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">LinearGradientBrush</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 25:                                 <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">Border.Background</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 26:                                 <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">TextBlock</span> <span style="color:#ff0000;">Foreground</span>=<span style="color:#0000ff;">&#34;Blue&#34;</span> <span style="color:#ff0000;">FontSize</span>=<span style="color:#0000ff;">&#34;14&#34;</span> <span style="color:#ff0000;">FontWeight</span>=<span style="color:#0000ff;">&#34;Bold&#34;</span> <span style="color:#ff0000;">Margin</span>=<span style="color:#0000ff;">&#34;5&#34;</span> <span style="color:#ff0000;">Text</span>=<span style="color:#0000ff;">&#34;{Binding}&#34;</span> <span style="color:#ff0000;">Width</span>=<span style="color:#0000ff;">&#34;Auto&#34;</span><span style="color:#0000ff;">/&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 27:                             <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">Border</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 28:                         <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">DataTemplate</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 29:                     <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">GridView.ColumnHeaderTemplate</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 30:                     <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">GridViewColumn</span> <span style="color:#ff0000;">Width</span>=<span style="color:#0000ff;">&#34;Auto&#34;</span> <span style="color:#ff0000;">Header</span>=<span style="color:#0000ff;">&#34;Visited&#34;</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 31:                         <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">GridViewColumn.CellTemplate</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 32:                             <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">DataTemplate</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 33:                                 <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">CheckBox</span> <span style="color:#ff0000;">IsChecked</span>=<span style="color:#0000ff;">&#34;{Binding Visited}&#34;</span><span style="color:#0000ff;">/&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 34:                             <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">DataTemplate</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 35:                         <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">GridViewColumn.CellTemplate</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 36:                     <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">GridViewColumn</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 37:                     <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">GridViewColumn</span> <span style="color:#ff0000;">Width</span>=<span style="color:#0000ff;">&#34;Auto&#34;</span> <span style="color:#ff0000;">Header</span>=<span style="color:#0000ff;">&#34;State Name&#34;</span> <span style="color:#ff0000;">DisplayMemberBinding</span>=<span style="color:#0000ff;">&#34;{Binding Path=Name}&#34;</span><span style="color:#0000ff;">/&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 38:                     <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">GridViewColumn</span> <span style="color:#ff0000;">Width</span>=<span style="color:#0000ff;">&#34;Auto&#34;</span> <span style="color:#ff0000;">Header</span>=<span style="color:#0000ff;">&#34;State Capital&#34;</span> <span style="color:#ff0000;">DisplayMemberBinding</span>=<span style="color:#0000ff;">&#34;{Binding Path=Capital}&#34;</span><span style="color:#0000ff;">/&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 39:                     <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">GridViewColumn</span> <span style="color:#ff0000;">Width</span>=<span style="color:#0000ff;">&#34;Auto&#34;</span> <span style="color:#ff0000;">Header</span>=<span style="color:#0000ff;">&#34;State Nick Name&#34;</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 40:                         <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">GridViewColumn.CellTemplate</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 41:                             <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">DataTemplate</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 42:                                 <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">Expander</span> <span style="color:#ff0000;">ExpandDirection</span>=<span style="color:#0000ff;">&#34;Right&#34;</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 43:                                     <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">TextBlock</span> <span style="color:#ff0000;">Foreground</span>=<span style="color:#0000ff;">&#34;Green&#34;</span> <span style="color:#ff0000;">FontSize</span>=<span style="color:#0000ff;">&#34;14&#34;</span> <span style="color:#ff0000;">Text</span>=<span style="color:#0000ff;">&#34;{Binding NickName}&#34;</span><span style="color:#0000ff;">/&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 44:                                 <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">Expander</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 45:                             <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">DataTemplate</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 46:                         <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">GridViewColumn.CellTemplate</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 47:                     <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">GridViewColumn</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 48:                     <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">GridViewColumn</span> <span style="color:#ff0000;">Width</span>=<span style="color:#0000ff;">&#34;100&#34;</span> <span style="color:#ff0000;">Header</span>=<span style="color:#0000ff;">&#34;Cities&#34;</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 49:                         <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">GridViewColumn.CellTemplate</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 50:                             <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">DataTemplate</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 51:                                 <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">ComboBox</span> <span style="color:#ff0000;">Width</span>=<span style="color:#0000ff;">&#34;75&#34;</span> <span style="color:#ff0000;">ItemsSource</span>=<span style="color:#0000ff;">&#34;{Binding Cities}&#34;</span><span style="color:#0000ff;">/&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 52:                             <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">DataTemplate</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 53:                         <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">GridViewColumn.CellTemplate</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 54:                     <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">GridViewColumn</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 55:                 <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">GridView</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 56:             <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">ListView.View</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 57:         <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">ListView</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 58:     <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">Grid</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 59: <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">Window</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 60: </pre>
</pre>
<p>And here is complete C# code of this project.</p>
<pre style="border-bottom:#cecece 1px solid;border-left:#cecece 1px solid;background-color:#fbfbfb;min-height:40px;width:450px;overflow:auto;border-top:#cecece 1px solid;border-right:#cecece 1px solid;padding:5px;">
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  1: <span style="color:#0000ff;">using</span> System;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  2: <span style="color:#0000ff;">using</span> System.Collections.Generic;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  3: <span style="color:#0000ff;">using</span> System.Linq;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  4: <span style="color:#0000ff;">using</span> System.Text;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  5: <span style="color:#0000ff;">using</span> System.Windows;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  6: <span style="color:#0000ff;">using</span> System.Windows.Controls;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  7: <span style="color:#0000ff;">using</span> System.Windows.Data;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  8: <span style="color:#0000ff;">using</span> System.Windows.Documents;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  9: <span style="color:#0000ff;">using</span> System.Windows.Input;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 10: <span style="color:#0000ff;">using</span> System.Windows.Media;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 11: <span style="color:#0000ff;">using</span> System.Windows.Media.Imaging;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 12: <span style="color:#0000ff;">using</span> System.Windows.Navigation;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 13: <span style="color:#0000ff;">using</span> System.Windows.Shapes;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 14:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 15: <span style="color:#0000ff;">namespace</span> UIElement
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 16: {
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 17:     <span style="color:#808080;">/// &#60;summary&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 18:     <span style="color:#808080;">/// Interaction logic for Window1.xaml</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 19:     <span style="color:#808080;">/// &#60;/summary&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 20:     <span style="color:#0000ff;">public</span> partial <span style="color:#0000ff;">class</span> Window1 : Window
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 21:     {
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 22:         <span style="color:#0000ff;">public</span> Window1()
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 23:         {
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 24:             InitializeComponent();
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 25:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 26:             List&#60;StateInfo&#62; statesList = <span style="color:#0000ff;">new</span> List&#60;StateInfo&#62;();
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 27:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 28:             StateInfo s1 = <span style="color:#0000ff;">new</span> StateInfo();
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 29:             s1.Name = &#34;<span style="color:#8b0000;">Maryland</span>&#34;;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 30:             s1.Capital = &#34;<span style="color:#8b0000;">Annapolis</span>&#34;;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 31:             s1.NickName = &#34;<span style="color:#8b0000;">Old Line State</span>&#34;;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 32:             s1.Visited = <span style="color:#0000ff;">true</span>;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 33:             List&#60;String&#62; s1List = <span style="color:#0000ff;">new</span> List&#60;<span style="color:#0000ff;">string</span>&#62;();
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 34:             s1List.Add(&#34;<span style="color:#8b0000;">Frederick</span>&#34;);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 35:             s1List.Add(&#34;<span style="color:#8b0000;">Baltimore</span>&#34;);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 36:             s1List.Add(&#34;<span style="color:#8b0000;">Rockville</span>&#34;);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 37:             s1List.Add(&#34;<span style="color:#8b0000;">Hagerstown</span>&#34;);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 38:             s1.Cities = s1List;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 39:             statesList.Add(s1);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 40:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 41:             StateInfo s2 = <span style="color:#0000ff;">new</span> StateInfo();
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 42:             s2.Name = &#34;<span style="color:#8b0000;">California</span>&#34;;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 43:             s2.Capital = &#34;<span style="color:#8b0000;">Sacramento</span>&#34;;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 44:             s2.NickName = &#34;<span style="color:#8b0000;">Golden State</span>&#34;;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 45:             s2.Visited = <span style="color:#0000ff;">true</span>;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 46:             List&#60;String&#62; s2List = <span style="color:#0000ff;">new</span> List&#60;<span style="color:#0000ff;">string</span>&#62;();
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 47:             s2List.Add(&#34;<span style="color:#8b0000;">Los Angeles</span>&#34;);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 48:             s2List.Add(&#34;<span style="color:#8b0000;">San Franscico</span>&#34;);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 49:             s2List.Add(&#34;<span style="color:#8b0000;">San Deiago</span>&#34;);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 50:             s2List.Add(&#34;<span style="color:#8b0000;">San Jose</span>&#34;);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 51:             s2List.Add(&#34;<span style="color:#8b0000;">Fresno</span>&#34;);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 52:             s2List.Add(&#34;<span style="color:#8b0000;">Long Beach</span>&#34;);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 53:             s2.Cities = s2List;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 54:             statesList.Add(s2);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 55:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 56:             StateInfo s3 = <span style="color:#0000ff;">new</span> StateInfo();
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 57:             s3.Name = &#34;<span style="color:#8b0000;">Taxes</span>&#34;;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 58:             s3.Capital = &#34;<span style="color:#8b0000;">Austin</span>&#34;;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 59:             s3.NickName = &#34;<span style="color:#8b0000;">Lone Star State</span>&#34;;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 60:             s3.Visited = <span style="color:#0000ff;">true</span>;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 61:             List&#60;String&#62; s3List = <span style="color:#0000ff;">new</span> List&#60;<span style="color:#0000ff;">string</span>&#62;();
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 62:             s3List.Add(&#34;<span style="color:#8b0000;">Houston</span>&#34;);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 63:             s3List.Add(&#34;<span style="color:#8b0000;">Dallas</span>&#34;);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 64:             s3List.Add(&#34;<span style="color:#8b0000;">San Antonio</span>&#34;);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 65:             s3List.Add(&#34;<span style="color:#8b0000;">El Paso</span>&#34;);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 66:             s3.Cities = s3List;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 67:             statesList.Add(s3);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 68:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 69:             StateInfo s4 = <span style="color:#0000ff;">new</span> StateInfo();
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 70:             s4.Name = &#34;<span style="color:#8b0000;">Ohio</span>&#34;;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 71:             s4.Capital = &#34;<span style="color:#8b0000;">Columbus</span>&#34;;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 72:             s4.NickName = &#34;<span style="color:#8b0000;">Buckeye State</span>&#34;;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 73:             s4.Visited = <span style="color:#0000ff;">false</span>;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 74:             List&#60;String&#62; s4List = <span style="color:#0000ff;">new</span> List&#60;String&#62;();
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 75:             s4List.Add(&#34;<span style="color:#8b0000;">Cleveland</span>&#34;);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 76:             s4List.Add(&#34;<span style="color:#8b0000;">Cincinnati</span>&#34;);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 77:             s4.Cities = s4List;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 78:             statesList.Add(s4);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 79:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 80:             StateInfo s5 = <span style="color:#0000ff;">new</span> StateInfo();
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 81:             s5.Name = &#34;<span style="color:#8b0000;">Florida</span>&#34;;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 82:             s5.Capital = &#34;<span style="color:#8b0000;">Tallahassee</span>&#34;;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 83:             s5.NickName = &#34;<span style="color:#8b0000;">Sunshine State</span>&#34;;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 84:             s5.Visited = <span style="color:#0000ff;">false</span>;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 85:             List&#60;String&#62; s5List = <span style="color:#0000ff;">new</span> List&#60;<span style="color:#0000ff;">string</span>&#62;();
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 86:             s5List.Add(&#34;<span style="color:#8b0000;">Miami</span>&#34;);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 87:             s5List.Add(&#34;<span style="color:#8b0000;">Jacksonville</span>&#34;);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 88:             s5List.Add(&#34;<span style="color:#8b0000;">Tampa</span>&#34;);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 89:             s5.Cities = s5List;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 90:             statesList.Add(s5);
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 91:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 92:             list.ItemsSource = statesList;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 93:         }
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 94:     }
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 95:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 96:     <span style="color:#0000ff;">public</span> <span style="color:#0000ff;">class</span> StateInfo
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 97:     {
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 98:         <span style="color:#0000ff;">private</span> List&#60;String&#62; list;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 99:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">100:         <span style="color:#0000ff;">public</span> StateInfo()
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">101:         {
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">102:         }
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">103:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">104:         <span style="color:#0000ff;">public</span> StateInfo(String name, String capital, String nickName, String timeZone, Boolean visited)
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">105:         {
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">106:             Name = name;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">107:             Capital = capital;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">108:             NickName = nickName;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">109:             TimeZone = timeZone;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">110:             Visited = visited;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">111:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">112:             list = <span style="color:#0000ff;">new</span> List&#60;<span style="color:#0000ff;">string</span>&#62;();
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">113:         }
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">114:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">115:         <span style="color:#0000ff;">public</span> String Name
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">116:         { <span style="color:#0000ff;">get</span>; <span style="color:#0000ff;">set</span>; }
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">117:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">118:         <span style="color:#0000ff;">public</span> String Capital
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">119:         { <span style="color:#0000ff;">get</span>; <span style="color:#0000ff;">set</span>; }
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">120:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">121:         <span style="color:#0000ff;">public</span> String NickName
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">122:         { <span style="color:#0000ff;">get</span>; <span style="color:#0000ff;">set</span>; }
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">123:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">124:         <span style="color:#0000ff;">public</span> String TimeZone
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">125:         { <span style="color:#0000ff;">get</span>; <span style="color:#0000ff;">set</span>; }
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">126:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">127:         <span style="color:#0000ff;">public</span> Boolean Visited
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">128:         { <span style="color:#0000ff;">get</span>; <span style="color:#0000ff;">set</span>; }
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">129:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">130:         <span style="color:#0000ff;">public</span> List&#60;String&#62; Cities
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">131:         {
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">132:             <span style="color:#0000ff;">get</span> { <span style="color:#0000ff;">return</span> list; }
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">133:             <span style="color:#0000ff;">set</span> { list = <span style="color:#0000ff;">value</span>; }
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">134:         }
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">135:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">136:     }
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">137: }
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">138: </pre>
</pre>
<p>The output of this program would be something like this.</p>
<p><a href="http://zamjad.files.wordpress.com/2009/11/listviewoutput_06.gif"><img style="border-bottom:0;border-left:0;display:block;float:none;margin-left:auto;border-top:0;margin-right:auto;border-right:0;" title="ListViewOutput_06" border="0" alt="ListViewOutput_06" src="http://zamjad.files.wordpress.com/2009/11/listviewoutput_06_thumb.gif?w=525&#038;h=300" width="525" height="300" /></a></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Using Expender control inside List View]]></title>
<link>http://zamjad.wordpress.com/2009/11/19/using-expender-control-inside-list-view/</link>
<pubDate>Fri, 20 Nov 2009 04:20:41 +0000</pubDate>
<dc:creator>zamjad</dc:creator>
<guid>http://zamjad.wordpress.com/2009/11/19/using-expender-control-inside-list-view/</guid>
<description><![CDATA[Till now are are applying template only at the list view header. This time we are going to apply tem]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Till now are are applying template only at the list view header. This time we are going to apply template in the list view item. In this example we are going to insert the expender control inside the cell of the grid view. We are using data template for this purpose. We are going to apply on GridViewColumn and use its CellTemplate property. CellTemplate is a DataTemplate type property. Here is a piece of code to insert expender inside the list view. </p>
<pre style="border-bottom:#cecece 1px solid;border-left:#cecece 1px solid;background-color:#fbfbfb;min-height:40px;width:450px;overflow:auto;border-top:#cecece 1px solid;border-right:#cecece 1px solid;padding:5px;">
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  1: <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">GridViewColumn.CellTemplate</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  2: 	<span style="color:#0000ff;">&#60;</span><span style="color:#800000;">DataTemplate</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  3: 		<span style="color:#0000ff;">&#60;</span><span style="color:#800000;">Expander</span> <span style="color:#ff0000;">ExpandDirection</span>=<span style="color:#0000ff;">&#34;Right&#34;</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  4: 			<span style="color:#0000ff;">&#60;</span><span style="color:#800000;">TextBlock</span> <span style="color:#ff0000;">Foreground</span>=<span style="color:#0000ff;">&#34;Green&#34;</span> <span style="color:#ff0000;">FontSize</span>=<span style="color:#0000ff;">&#34;14&#34;</span> <span style="color:#ff0000;">Text</span>=<span style="color:#0000ff;">&#34;{Binding NickName}&#34;</span><span style="color:#0000ff;">/&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  5: 		<span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">Expander</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  6: 	<span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">DataTemplate</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  7: <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">GridViewColumn.CellTemplate</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  8: </pre>
</pre>
<p>Rest of the code is almost same as we saw earlier. Here is a complete XAML code of the project. </p>
<pre style="border-bottom:#cecece 1px solid;border-left:#cecece 1px solid;background-color:#fbfbfb;min-height:40px;width:450px;overflow:auto;border-top:#cecece 1px solid;border-right:#cecece 1px solid;padding:5px;">
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  1: <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">Window</span> <span style="color:#ff0000;">x</span>:<span style="color:#ff0000;">Class</span>=<span style="color:#0000ff;">&#34;UIElement.Window1&#34;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  2:     <span style="color:#ff0000;">xmlns</span>=<span style="color:#0000ff;">&#34;http://schemas.microsoft.com/winfx/2006/xaml/presentation&#34;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  3:     <span style="color:#ff0000;">xmlns</span>:<span style="color:#ff0000;">x</span>=<span style="color:#0000ff;">&#34;http://schemas.microsoft.com/winfx/2006/xaml&#34;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  4:     <span style="color:#ff0000;">xmlns</span>:<span style="color:#ff0000;">local</span>=<span style="color:#0000ff;">&#34;clr-namespace:UIElement&#34;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  5:     <span style="color:#ff0000;">Title</span>=<span style="color:#0000ff;">&#34;ListView Example&#34;</span> <span style="color:#ff0000;">Height</span>=<span style="color:#0000ff;">&#34;300&#34;</span> <span style="color:#ff0000;">Width</span>=<span style="color:#0000ff;">&#34;400&#34;</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  6:     <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">Window.Resources</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  7:         <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">Style</span> <span style="color:#ff0000;">x</span>:<span style="color:#ff0000;">Key</span>=<span style="color:#0000ff;">&#34;myStyle&#34;</span> <span style="color:#ff0000;">TargetType</span>=<span style="color:#0000ff;">&#34;{x:Type ListViewItem}&#34;</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  8:             <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">Setter</span> <span style="color:#ff0000;">Property</span>=<span style="color:#0000ff;">&#34;Background&#34;</span> <span style="color:#ff0000;">Value</span>=<span style="color:#0000ff;">&#34;AliceBlue&#34;</span><span style="color:#0000ff;">/&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  9:             <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">Setter</span> <span style="color:#ff0000;">Property</span>=<span style="color:#0000ff;">&#34;FontSize&#34;</span> <span style="color:#ff0000;">Value</span>=<span style="color:#0000ff;">&#34;14&#34;</span><span style="color:#0000ff;">/&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 10:             <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">Setter</span> <span style="color:#ff0000;">Property</span>=<span style="color:#0000ff;">&#34;Foreground&#34;</span> <span style="color:#ff0000;">Value</span>=<span style="color:#0000ff;">&#34;Green&#34;</span><span style="color:#0000ff;">/&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 11:         <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">Style</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 12:     <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">Window.Resources</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 13:     <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">Grid</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 14:         <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">ListView</span> <span style="color:#ff0000;">ItemContainerStyle</span>=<span style="color:#0000ff;">&#34;{StaticResource myStyle}&#34;</span> <span style="color:#ff0000;">Name</span>=<span style="color:#0000ff;">&#34;list&#34;</span> <span style="color:#ff0000;">Margin</span>=<span style="color:#0000ff;">&#34;5&#34;</span> <span style="color:#ff0000;">HorizontalContentAlignment</span>=<span style="color:#0000ff;">&#34;Stretch&#34;</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 15:             <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">ListView.View</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 16:                 <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">GridView</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 17:                     <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">GridView.ColumnHeaderTemplate</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 18:                         <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">DataTemplate</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 19:                             <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">Border</span> <span style="color:#ff0000;">BorderBrush</span>=<span style="color:#0000ff;">&#34;Brown&#34;</span> <span style="color:#ff0000;">BorderThickness</span>=<span style="color:#0000ff;">&#34;2&#34;</span> <span style="color:#ff0000;">CornerRadius</span>=<span style="color:#0000ff;">&#34;5&#34;</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 20:                                 <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">Border.Background</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 21:                                     <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">LinearGradientBrush</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 22:                                         <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">GradientStop</span> <span style="color:#ff0000;">Offset</span>=<span style="color:#0000ff;">&#34;0&#34;</span> <span style="color:#ff0000;">Color</span>=<span style="color:#0000ff;">&#34;Wheat&#34;</span><span style="color:#0000ff;">/&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 23:                                         <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">GradientStop</span> <span style="color:#ff0000;">Offset</span>=<span style="color:#0000ff;">&#34;1&#34;</span> <span style="color:#ff0000;">Color</span>=<span style="color:#0000ff;">&#34;LightCoral&#34;</span><span style="color:#0000ff;">/&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 24:                                     <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">LinearGradientBrush</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 25:                                 <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">Border.Background</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 26:                                 <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">TextBlock</span> <span style="color:#ff0000;">Foreground</span>=<span style="color:#0000ff;">&#34;Blue&#34;</span> <span style="color:#ff0000;">FontSize</span>=<span style="color:#0000ff;">&#34;14&#34;</span> <span style="color:#ff0000;">FontWeight</span>=<span style="color:#0000ff;">&#34;Bold&#34;</span> <span style="color:#ff0000;">Margin</span>=<span style="color:#0000ff;">&#34;5&#34;</span> <span style="color:#ff0000;">Text</span>=<span style="color:#0000ff;">&#34;{Binding}&#34;</span> <span style="color:#ff0000;">Width</span>=<span style="color:#0000ff;">&#34;Auto&#34;</span><span style="color:#0000ff;">/&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 27:                             <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">Border</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 28:                         <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">DataTemplate</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 29:                     <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">GridView.ColumnHeaderTemplate</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 30:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 31:                     <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">GridViewColumn</span> <span style="color:#ff0000;">Width</span>=<span style="color:#0000ff;">&#34;Auto&#34;</span> <span style="color:#ff0000;">Header</span>=<span style="color:#0000ff;">&#34;State Name&#34;</span> <span style="color:#ff0000;">DisplayMemberBinding</span>=<span style="color:#0000ff;">&#34;{Binding Path=Name}&#34;</span><span style="color:#0000ff;">/&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 32:                     <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">GridViewColumn</span> <span style="color:#ff0000;">Width</span>=<span style="color:#0000ff;">&#34;Auto&#34;</span> <span style="color:#ff0000;">Header</span>=<span style="color:#0000ff;">&#34;State Capital&#34;</span> <span style="color:#ff0000;">DisplayMemberBinding</span>=<span style="color:#0000ff;">&#34;{Binding Path=Capital}&#34;</span><span style="color:#0000ff;">/&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 33:                     <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">GridViewColumn</span> <span style="color:#ff0000;">Width</span>=<span style="color:#0000ff;">&#34;Auto&#34;</span> <span style="color:#ff0000;">Header</span>=<span style="color:#0000ff;">&#34;State Nick Name&#34;</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 34:                         <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">GridViewColumn.CellTemplate</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 35:                             <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">DataTemplate</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 36:                                 <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">Expander</span> <span style="color:#ff0000;">ExpandDirection</span>=<span style="color:#0000ff;">&#34;Right&#34;</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 37:                                     <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">TextBlock</span> <span style="color:#ff0000;">Foreground</span>=<span style="color:#0000ff;">&#34;Green&#34;</span> <span style="color:#ff0000;">FontSize</span>=<span style="color:#0000ff;">&#34;14&#34;</span> <span style="color:#ff0000;">Text</span>=<span style="color:#0000ff;">&#34;{Binding NickName}&#34;</span><span style="color:#0000ff;">/&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 38:                                 <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">Expander</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 39:                             <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">DataTemplate</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 40:                         <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">GridViewColumn.CellTemplate</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 41:                     <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">GridViewColumn</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 42:                 <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">GridView</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 43:             <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">ListView.View</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 44:         <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">ListView</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 45:     <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">Grid</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 46: <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">Window</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 47: </pre>
</pre>
<p>C# code of this project is also same as previous project. Here is complete C# code of this project.</p>
<pre style="border-bottom:#cecece 1px solid;border-left:#cecece 1px solid;background-color:#fbfbfb;min-height:40px;width:450px;overflow:auto;border-top:#cecece 1px solid;border-right:#cecece 1px solid;padding:5px;">
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  1: <span style="color:#0000ff;">using</span> System;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  2: <span style="color:#0000ff;">using</span> System.Collections.Generic;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  3: <span style="color:#0000ff;">using</span> System.Linq;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  4: <span style="color:#0000ff;">using</span> System.Text;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  5: <span style="color:#0000ff;">using</span> System.Windows;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  6: <span style="color:#0000ff;">using</span> System.Windows.Controls;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  7: <span style="color:#0000ff;">using</span> System.Windows.Data;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  8: <span style="color:#0000ff;">using</span> System.Windows.Documents;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;">  9: <span style="color:#0000ff;">using</span> System.Windows.Input;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 10: <span style="color:#0000ff;">using</span> System.Windows.Media;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 11: <span style="color:#0000ff;">using</span> System.Windows.Media.Imaging;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 12: <span style="color:#0000ff;">using</span> System.Windows.Navigation;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 13: <span style="color:#0000ff;">using</span> System.Windows.Shapes;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 14:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 15: <span style="color:#0000ff;">namespace</span> UIElement
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 16: {
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 17:     <span style="color:#808080;">/// &#60;summary&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 18:     <span style="color:#808080;">/// Interaction logic for Window1.xaml</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 19:     <span style="color:#808080;">/// &#60;/summary&#62;</span>
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 20:     <span style="color:#0000ff;">public</span> partial <span style="color:#0000ff;">class</span> Window1 : Window
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 21:     {
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 22:         <span style="color:#0000ff;">public</span> Window1()
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 23:         {
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 24:             InitializeComponent();
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 25:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 26:             List&#60;StateInfo&#62; statesList = <span style="color:#0000ff;">new</span> List&#60;StateInfo&#62;();
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 27:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 28:             statesList.Add(<span style="color:#0000ff;">new</span> StateInfo(&#34;<span style="color:#8b0000;">Maryland</span>&#34;, &#34;<span style="color:#8b0000;">Annapolis</span>&#34;, &#34;<span style="color:#8b0000;">Old Line State</span>&#34;, &#34;<span style="color:#8b0000;">Eastern</span>&#34;));
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 29:             statesList.Add(<span style="color:#0000ff;">new</span> StateInfo(&#34;<span style="color:#8b0000;">California</span>&#34;, &#34;<span style="color:#8b0000;">Sacramento</span>&#34;, &#34;<span style="color:#8b0000;">Golden State</span>&#34;, &#34;<span style="color:#8b0000;">Pacific</span>&#34;));
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 30:             statesList.Add(<span style="color:#0000ff;">new</span> StateInfo(&#34;<span style="color:#8b0000;">Washington</span>&#34;, &#34;<span style="color:#8b0000;">Olympia</span>&#34;, &#34;<span style="color:#8b0000;">Ever Green State</span>&#34;, &#34;<span style="color:#8b0000;">Pacific</span>&#34;));
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 31:             statesList.Add(<span style="color:#0000ff;">new</span> StateInfo(&#34;<span style="color:#8b0000;">Taxes</span>&#34;, &#34;<span style="color:#8b0000;">Austin</span>&#34;, &#34;<span style="color:#8b0000;">Lone Star State</span>&#34;, &#34;<span style="color:#8b0000;">Central</span>&#34;));
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 32:             statesList.Add(<span style="color:#0000ff;">new</span> StateInfo(&#34;<span style="color:#8b0000;">New York</span>&#34;, &#34;<span style="color:#8b0000;">Albany</span>&#34;, &#34;<span style="color:#8b0000;">Empire State</span>&#34;, &#34;<span style="color:#8b0000;">Eastern</span>&#34;));
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 33:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 34:             list.ItemsSource = statesList;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 35:         }
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 36:     }
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 37:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 38:     <span style="color:#0000ff;">public</span> <span style="color:#0000ff;">class</span> StateInfo
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 39:     {
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 40:         <span style="color:#0000ff;">public</span> StateInfo()
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 41:         {
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 42:         }
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 43:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 44:         <span style="color:#0000ff;">public</span> StateInfo(String name, String capital, String nickName, String timeZone)
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 45:         {
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 46:             Name = name;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 47:             Capital = capital;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 48:             NickName = nickName;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 49:             TimeZone = timeZone;
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 50:         }
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 51:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 52:         <span style="color:#0000ff;">public</span> String Name
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 53:         { <span style="color:#0000ff;">get</span>; <span style="color:#0000ff;">set</span>; }
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 54:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 55:         <span style="color:#0000ff;">public</span> String Capital
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 56:         { <span style="color:#0000ff;">get</span>; <span style="color:#0000ff;">set</span>; }
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 57:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 58:         <span style="color:#0000ff;">public</span> String NickName
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 59:         { <span style="color:#0000ff;">get</span>; <span style="color:#0000ff;">set</span>; }
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 60:
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 61:         <span style="color:#0000ff;">public</span> String TimeZone
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 62:         { <span style="color:#0000ff;">get</span>; <span style="color:#0000ff;">set</span>; }
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 63:     }
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 64: }
</pre>
<pre style="background-color:#fbfbfb;width:100%;font-family:consolas,&#39;font-size:12px;margin:0;"> 65: </pre>
</pre>
<p>Here is the output of this program.</p>
<p><a href="http://zamjad.files.wordpress.com/2009/11/listviewoutput_05.gif"><img style="border-bottom:0;border-left:0;display:block;float:none;margin-left:auto;border-top:0;margin-right:auto;border-right:0;" title="ListViewOutput_05" border="0" alt="ListViewOutput_05" src="http://zamjad.files.wordpress.com/2009/11/listviewoutput_05_thumb.gif?w=400&#038;h=300" width="400" height="300" /></a> </p>
<p>With the help of horizontal expender, now we can make the state nick name demand base, means user can see the nick name of his/her selected states. </p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Dual Propellant Expander]]></title>
<link>http://gravityloss.wordpress.com/2009/11/12/dual-propellant-expander/</link>
<pubDate>Wed, 11 Nov 2009 23:29:16 +0000</pubDate>
<dc:creator>gravityloss</dc:creator>
<guid>http://gravityloss.wordpress.com/2009/11/12/dual-propellant-expander/</guid>
<description><![CDATA[Or what you are going to call it, an unrealized proposal from Aerojet around 1984. PDF Found on NTRS]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Or what you are going to call it, an unrealized proposal from Aerojet around 1984. <a href="http://hdl.handle.net/2060/19850008690">PDF</a> Found on <a href="http://ntrs.nasa.gov">NTRS</a>.</p>
<p>The idea was to have two turbopumps (like on SSME), but instead operate on the expander cycle. Two heat exchangers, two turbines, two pumps. One for each propellant.</p>
<p>&#160;</p>
<div id="attachment_613" class="wp-caption aligncenter" style="width: 363px"><img class="size-full wp-image-613" title="aerojet_cycle" src="http://gravityloss.wordpress.com/files/2009/11/aerojet_cycle1.png" alt="aerojet_cycle" width="353" height="287" /><p class="wp-caption-text">Both propellants go through a heat exchanger and an expander driving a pump</p></div>
<p>&#160;</p>
<p>This is a LOX-hydrogen engine. Also this means that since there is the same propellant on both sides of the axle, in the turbine and in the pump, no elaborate seals are needed. Original intent for these engines was for in-space reusable stuff, that needs to be operated many times and for a long time without maintenance. Size was in the RL10 class, about 70 kN. (RL10 has grown though.)</p>
<div class="mceTemp mceIEcenter">
<dl class="wp-caption aligncenter">
<dt class="wp-caption-dt"><img class="size-full wp-image-614" title="aerojet_margin" src="http://gravityloss.wordpress.com/files/2009/11/aerojet_margin.png" alt="aerojet_margin" width="500" height="593" /></dt>
</dl>
<dl class="wp-caption aligncenter">
<dd class="wp-caption-dd">Simplicity and margin were claimed</dd>
</dl>
</div>
<p style="text-align:left;">Think for example if you let a fired turbopump sit in space for a long time. Will some fuel leak to the oxidizer side through the seals? This could avoid that. (You can use helium purges too though but then you&#8217;ve got one more fluids you need to tank.)</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Resize after Expander collapse]]></title>
<link>http://isheeple.wordpress.com/2009/10/07/resize-after-expander-collapse/</link>
<pubDate>Wed, 07 Oct 2009 11:40:52 +0000</pubDate>
<dc:creator>isheeple</dc:creator>
<guid>http://isheeple.wordpress.com/2009/10/07/resize-after-expander-collapse/</guid>
<description><![CDATA[I have recently shared this code with a few people and its something I use myself so I thought I wou]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>I have recently shared this code with a few people and its something I use myself so I thought I would share it publicly.</p>
<p>I was having a problem that when the Expander was collapsed the grid containing the expander did not resize properly unless it was recycled. In my case this grid was inside a DataGrid. So those this code is specific to my use (of an expander inside a grid) it can be easily adapted to other types of containers&#8230;or you can just wrap your expander in a grid and use it like its posted!</p>
<p>Just add this to your Expander_Collapsed event and call it good.</p>
<div style="font-size:10pt;background:white;color:black;font-family:Courier New;">
<p style="margin:0;"><span style="color:#2b91af;">    1</span> <span style="color:blue;">private</span> <span style="color:blue;">void</span> Expander_Collapsed(<span style="color:blue;">object</span> sender, System.Windows.<span style="color:#2b91af;">RoutedEventArgs</span> e)</p>
<p style="margin:0;"><span style="color:#2b91af;">    2</span> {</p>
<p style="margin:0;"><span style="color:#2b91af;">    3</span>     <span style="color:blue;">var</span> expander = sender <span style="color:blue;">as</span> <span style="color:#2b91af;">Expander</span>;</p>
<p style="margin:0;"><span style="color:#2b91af;">    4</span>     expander.UpdateLayout();</p>
<p style="margin:0;"><span style="color:#2b91af;">    5</span>     <span style="color:blue;">var</span> grid = expander.Parent <span style="color:blue;">as</span> <span style="color:#2b91af;">Grid</span>;</p>
<p style="margin:0;"><span style="color:#2b91af;">    6</span> </p>
<p style="margin:0;"><span style="color:#2b91af;">    7</span>     <span style="color:blue;">if</span> (grid.DesiredSize.Height != grid.ActualHeight)</p>
<p style="margin:0;"><span style="color:#2b91af;">    8</span>     {</p>
<p style="margin:0;"><span style="color:#2b91af;">    9</span>         grid.Height = grid.DesiredSize.Height;</p>
<p style="margin:0;"><span style="color:#2b91af;">   10</span>     }</p>
<p style="margin:0;"><span style="color:#2b91af;">   11</span>     grid.UpdateLayout();</p>
<p style="margin:0;"><span style="color:#2b91af;">   12</span>     grid.Height = System.<span style="color:#2b91af;">Double</span>.NaN;</p>
<p style="margin:0;"><span style="color:#2b91af;">   13</span> }</p>
</div>
<p><!--EndFragment--></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Flexible Panel Layouts]]></title>
<link>http://davidgwyer.wordpress.com/2009/10/01/flexible-panel-layouts/</link>
<pubDate>Thu, 01 Oct 2009 09:39:47 +0000</pubDate>
<dc:creator>David Gwyer</dc:creator>
<guid>http://davidgwyer.wordpress.com/2009/10/01/flexible-panel-layouts/</guid>
<description><![CDATA[The sheer number of panel layout combinations can be overwhelming to WPF newcomers, I know it was fo]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>The sheer number of panel layout combinations can be overwhelming to WPF newcomers, I know it was for me! Having been used to traditional Windows Forms and fairly simple UI panel layouts, WPF really removes all the restrictions on what can be done, but takes a little getting used to.</p>
<p>While experimenting with simple layouts I came across a nice way to use a ScrollViewer control inside of an Expander. This is typical of my experiences of WPF thus far, in that the WPF layout is so flexible in what you can do some things are not immediately obvious until you start playing around with different combinations. In this case it was when I had three expanders inside a parent expander, as show below.</p>
<div style="margin:20px;"><img class="aligncenter size-full wp-image-22" title="Default Window" src="http://davidgwyer.wordpress.com/files/2009/10/full_height.gif" alt="Default Window" width="480" height="360" /></div>
<p>Now, if users behave themselves and don&#8217;t resize the main Window then every thing is fine. But if you decrease the height of the Window then, when all three child Expander controls are expanded, some controls will disappear of the screen!</p>
<div style="margin:20px;"><img src="http://davidgwyer.wordpress.com/files/2009/10/small_height_noscrollerview.gif" alt="Controls Obscured" title="Controls Obscured" width="480" height="191" class="aligncenter size-full wp-image-30" /></div>
<p>Hmm, not really desirable. So, a nice remedy that will keep users happy is wrap the child Expander controls inside of a ScrollViewer control. When the user resizes the Window that would normally obscure other controls, the Window displays a scroll bar so the missing controls can be bought back into view again. All the code for thr three child Expanders is wrapped inside a StackPanel control, so all we need to do is to place this code inside a ScrollViewer container. The full code for the parent Expander is shown below.</p>
<pre class="brush: xml;">
&#60;ScrollViewer VerticalScrollBarVisibility=&#34;Auto&#34;&#62;
   &#60;StackPanel Width=&#34;230&#34;&#62;
      &#60;Border Margin=&#34;10&#34; Background=&#34;#FFE6E6E6&#34; CornerRadius=&#34;8&#34; Padding=&#34;5&#34; BorderBrush=&#34;#FF4F4F4F&#34; BorderThickness=&#34;1&#34;&#62;
         &#60;TextBlock Text=&#34;Expand/collapse the sections below to view available options.&#34; TextWrapping=&#34;Wrap&#34; Height=&#34;31.92&#34;/&#62;
      &#60;/Border&#62;
      &#60;Expander x:Name=&#34;expander1&#34; Margin=&#34;8,8,0,0&#34; RenderTransformOrigin=&#34;0.5,0.5&#34;&#62;
         &#60;Expander.Header&#62;
    	   &#60;TextBlock FontSize=&#34;13.333&#34; FontStyle=&#34;Italic&#34; Foreground=&#34;#FFEA3939&#34;&#62;&#60;Run FontSize=&#34;14.667&#34; Text=&#34;Expander #1&#34;/&#62;&#60;/TextBlock&#62;
    	 &#60;/Expander.Header&#62;
    	 &#60;Border Width=&#34;190&#34; BorderThickness=&#34;0,0,0,0.5&#34; BorderBrush=&#34;#FF949494&#34;&#62;
    	    &#60;StackPanel Height=&#34;85.718&#34;&#62;
    	       &#60;Button Content=&#34;Button&#34; Margin=&#34;22.286,10,26.999,10&#34; Height=&#34;22.859&#34; HorizontalContentAlignment=&#34;Center&#34; VerticalContentAlignment=&#34;Top&#34;/&#62;
               &#60;Button Content=&#34;Button&#34; Margin=&#34;22.286,10,26.999,10&#34; Height=&#34;22.859&#34; HorizontalContentAlignment=&#34;Center&#34; VerticalContentAlignment=&#34;Top&#34;/&#62;
            &#60;/StackPanel&#62;
         &#60;/Border&#62;
      &#60;/Expander&#62;
      &#60;Expander x:Name=&#34;expander2&#34; Margin=&#34;8,8,0,0&#34; Background=&#34;Transparent&#34; RenderTransformOrigin=&#34;0.5,0.5&#34;&#62;
         &#60;Expander.Header&#62;
    	    &#60;TextBlock Text=&#34;Expander #2&#34; Foreground=&#34;#FF55C724&#34; FontStyle=&#34;Italic&#34; FontSize=&#34;14.667&#34;/&#62;
    	 &#60;/Expander.Header&#62;
    	 &#60;StackPanel HorizontalAlignment=&#34;Left&#34; VerticalAlignment=&#34;Top&#34; Width=&#34;100&#34;&#62;
    	    &#60;Button Content=&#34;Button&#34; Margin=&#34;22.286,10,26.999,10&#34; Height=&#34;22.859&#34; HorizontalContentAlignment=&#34;Center&#34; VerticalContentAlignment=&#34;Top&#34;/&#62;
    	    &#60;Button Content=&#34;Button&#34; Margin=&#34;22.286,10,26.999,10&#34; Height=&#34;22.859&#34; HorizontalContentAlignment=&#34;Center&#34; VerticalContentAlignment=&#34;Top&#34;/&#62;
    	 &#60;/StackPanel&#62;
      &#60;/Expander&#62;
      &#60;Expander x:Name=&#34;expander3&#34; Margin=&#34;8,8,0,0&#34; Background=&#34;Transparent&#34; RenderTransformOrigin=&#34;0.5,0.5&#34;&#62;
         &#60;Expander.Header&#62;
    	    &#60;TextBlock Text=&#34;Expander #3&#34; Foreground=&#34;#FF2A4BE0&#34; FontStyle=&#34;Italic&#34; FontSize=&#34;14.667&#34;/&#62;
    	 &#60;/Expander.Header&#62;
    	 &#60;StackPanel HorizontalAlignment=&#34;Left&#34; VerticalAlignment=&#34;Top&#34; Width=&#34;100&#34;&#62;
    	    &#60;Button Content=&#34;Button&#34; Margin=&#34;22.286,10,26.999,10&#34; Height=&#34;22.859&#34; HorizontalContentAlignment=&#34;Center&#34; VerticalContentAlignment=&#34;Top&#34;/&#62;
    	    &#60;Button Content=&#34;Button&#34; Margin=&#34;22.286,10,26.999,10&#34; Height=&#34;22.859&#34; HorizontalContentAlignment=&#34;Center&#34; VerticalContentAlignment=&#34;Top&#34;/&#62;
         &#60;/StackPanel&#62;
      &#60;/Expander&#62;
   &#60;/StackPanel&#62;
&#60;/ScrollViewer&#62;
</pre>
<p>Now when the Window height is reduced, a scroll bar automatically appears to allow the parent Expanders content to be viewed by dragging the scroll bar up and down.</p>
<div style="margin:20px;"><img src="http://davidgwyer.wordpress.com/files/2009/10/small_withscrollview.gif" alt="ScrollViewer in action" title="ScrollViewer in action" width="480" height="153" class="aligncenter size-full wp-image-35" /></div>
<p>The ScrollViewer attribute <code>VerticalScrollBarVisibility="Auto"</code> describes how the vertical scroll bar should be rendered. If set to just &#8220;visible&#8221; then the scroll bar will always be visible even when it isn&#8217;t needed (in which case it appears, but is disabled). Setting it to &#8220;Auto&#8221; means that it is only displayed when required, as shown above.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Embedded Expender control inside ListBox in WPF]]></title>
<link>http://zamjad.wordpress.com/2009/09/25/embedded-expender-control-inside-listbox-in-wpf/</link>
<pubDate>Fri, 25 Sep 2009 19:20:24 +0000</pubDate>
<dc:creator>zamjad</dc:creator>
<guid>http://zamjad.wordpress.com/2009/09/25/embedded-expender-control-inside-listbox-in-wpf/</guid>
<description><![CDATA[I recently noticed one post in WPF form about how to make every element of list box expendable. We a]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>I recently noticed one post in WPF form about how to make every element of list box expendable. We already have one control expender to do exactly the same thing now the only thing we have to do it make every element of list box expender. </p>
<p>There was already one solution there. That solution was using the control template. Here i am going to do the same thing with data template. </p>
<p>Both techniques has some advantages and disadvantages. If we have lots of list box control in our program and we want to make every control behave like this then control template is a good idea. On the other hand if we want to make different list box display data differently then we can do it easily with data template. Such as we want to display expander in one list box, but stack in another one and nothing at all in third list box then we can define the data template of each list box. </p>
<p>Let’s take a look at our old example of display state information in a list box. Now we are going to display the state name with expender control and when user press the expender then we will show rest of the information. Here is our simple XAML file to make list box with data template. </p>
<pre style="border-right:#c0c0c0 1px solid;border-top:#c0c0c0 1px solid;min-height:40px;overflow:auto;border-left:#c0c0c0 1px solid;width:460px;border-bottom:#c0c0c0 1px solid;background-color:#fbfbfb;padding:5px;">
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;">  1: <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">Window</span> <span style="color:#ff0000;">x</span>:<span style="color:#ff0000;">Class</span>=<span style="color:#0000ff;">&#34;WpfListBox2.Window1&#34;</span>
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;">  2:     <span style="color:#ff0000;">xmlns</span>=<span style="color:#0000ff;">&#34;http://schemas.microsoft.com/winfx/2006/xaml/presentation&#34;</span>
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;">  3:     <span style="color:#ff0000;">xmlns</span>:<span style="color:#ff0000;">x</span>=<span style="color:#0000ff;">&#34;http://schemas.microsoft.com/winfx/2006/xaml&#34;</span>
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;">  4:     <span style="color:#ff0000;">Title</span>=<span style="color:#0000ff;">&#34;ListBox Expender&#34;</span> <span style="color:#ff0000;">Height</span>=<span style="color:#0000ff;">&#34;400&#34;</span> <span style="color:#ff0000;">Width</span>=<span style="color:#0000ff;">&#34;400&#34;</span> <span style="color:#ff0000;">Loaded</span>=<span style="color:#0000ff;">&#34;Window_Loaded&#34;</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;">  5:     <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">Grid</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;">  6:         <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">ListBox</span> <span style="color:#ff0000;">Name</span>=<span style="color:#0000ff;">&#34;lst&#34;</span> <span style="color:#ff0000;">Margin</span>=<span style="color:#0000ff;">&#34;5&#34;</span> <span style="color:#ff0000;">ItemsSource</span>=<span style="color:#0000ff;">&#34;{Binding}&#34;</span> <span style="color:#ff0000;">HorizontalContentAlignment</span>=<span style="color:#0000ff;">&#34;Stretch&#34;</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;">  7:             <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">ListBox.ItemTemplate</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;">  8:                 <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">DataTemplate</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;">  9:                     <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">StackPanel</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 10:                         <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">TextBlock</span> <span style="color:#ff0000;">Margin</span>=<span style="color:#0000ff;">&#34;5&#34;</span> <span style="color:#ff0000;">FontSize</span>=<span style="color:#0000ff;">&#34;16&#34;</span> <span style="color:#ff0000;">FontWeight</span>=<span style="color:#0000ff;">&#34;Bold&#34;</span> <span style="color:#ff0000;">Text</span>=<span style="color:#0000ff;">&#34;{Binding Path=Name}&#34;</span><span style="color:#0000ff;">/&#62;</span>
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 11:                         <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">Expander</span> <span style="color:#ff0000;">Name</span>=<span style="color:#0000ff;">&#34;expender&#34;</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 12:                             <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">Border</span> <span style="color:#ff0000;">Margin</span>=<span style="color:#0000ff;">&#34;5&#34;</span> <span style="color:#ff0000;">Background</span>=<span style="color:#0000ff;">&#34;Wheat&#34;</span> <span style="color:#ff0000;">BorderThickness</span>=<span style="color:#0000ff;">&#34;5&#34;</span> <span style="color:#ff0000;">BorderBrush</span>=<span style="color:#0000ff;">&#34;Brown&#34;</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 13:                                 <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">StackPanel</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 14:                                     <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">TextBlock</span> <span style="color:#ff0000;">Margin</span>=<span style="color:#0000ff;">&#34;5&#34;</span> <span style="color:#ff0000;">FontSize</span>=<span style="color:#0000ff;">&#34;16&#34;</span> <span style="color:#ff0000;">FontWeight</span>=<span style="color:#0000ff;">&#34;Bold&#34;</span> <span style="color:#ff0000;">Text</span>=<span style="color:#0000ff;">&#34;{Binding Path=Name}&#34;</span><span style="color:#0000ff;">/&#62;</span>
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 15:                                     <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">TextBlock</span> <span style="color:#ff0000;">Margin</span>=<span style="color:#0000ff;">&#34;5, 0&#34;</span>  <span style="color:#ff0000;">Foreground</span>=<span style="color:#0000ff;">&#34;Blue&#34;</span> <span style="color:#ff0000;">Text</span>=<span style="color:#0000ff;">&#34;{Binding Path=Capital}&#34;</span><span style="color:#0000ff;">/&#62;</span>
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 16:                                     <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">TextBlock</span> <span style="color:#ff0000;">Margin</span>=<span style="color:#0000ff;">&#34;5, 0&#34;</span>  <span style="color:#ff0000;">Text</span>=<span style="color:#0000ff;">&#34;{Binding Path=BigCity}&#34;</span><span style="color:#0000ff;">/&#62;</span>
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 17:                                     <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">TextBlock</span> <span style="color:#ff0000;">Margin</span>=<span style="color:#0000ff;">&#34;5, 0&#34;</span> <span style="color:#ff0000;">Text</span>=<span style="color:#0000ff;">&#34;{Binding Path=NickName}&#34;</span><span style="color:#0000ff;">/&#62;</span>
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 18:                                 <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">StackPanel</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 19:                             <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">Border</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 20:                         <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">Expander</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 21:                     <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">StackPanel</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 22:                 <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">DataTemplate</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 23:
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 24:             <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">ListBox.ItemTemplate</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 25:         <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">ListBox</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 26:     <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">Grid</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 27: <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">Window</span><span style="color:#0000ff;">&#62;</span>
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 28: </pre>
</pre>
<p>Here is our C# code. We create our class to store information about the state and then create a list that class. At the time of loading the window we populate the list box and then assign it to the listbox. </p>
<pre style="border-right:#c0c0c0 1px solid;border-top:#c0c0c0 1px solid;min-height:40px;overflow:auto;border-left:#c0c0c0 1px solid;width:460px;border-bottom:#c0c0c0 1px solid;background-color:#fbfbfb;padding:5px;">
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;">  1: <span style="color:#0000ff;">using</span> System;
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;">  2: <span style="color:#0000ff;">using</span> System.Collections.Generic;
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;">  3: <span style="color:#0000ff;">using</span> System.Linq;
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;">  4: <span style="color:#0000ff;">using</span> System.Text;
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;">  5: <span style="color:#0000ff;">using</span> System.Windows;
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;">  6: <span style="color:#0000ff;">using</span> System.Windows.Controls;
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;">  7: <span style="color:#0000ff;">using</span> System.Windows.Data;
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;">  8: <span style="color:#0000ff;">using</span> System.Windows.Documents;
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;">  9: <span style="color:#0000ff;">using</span> System.Windows.Input;
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 10: <span style="color:#0000ff;">using</span> System.Windows.Media;
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 11: <span style="color:#0000ff;">using</span> System.Windows.Media.Imaging;
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 12: <span style="color:#0000ff;">using</span> System.Windows.Navigation;
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 13: <span style="color:#0000ff;">using</span> System.Windows.Shapes;
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 14:
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 15: <span style="color:#0000ff;">namespace</span> WpfListBox2
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 16: {
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 17:     <span style="color:#808080;">/// &#60;summary&#62;</span>
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 18:     <span style="color:#808080;">/// Interaction logic for Window1.xaml</span>
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 19:     <span style="color:#808080;">/// &#60;/summary&#62;</span>
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 20:     <span style="color:#0000ff;">public</span> partial <span style="color:#0000ff;">class</span> Window1 : Window
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 21:     {
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 22:         <span style="color:#0000ff;">public</span> Window1()
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 23:         {
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 24:             InitializeComponent();
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 25:         }
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 26:
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 27:         <span style="color:#0000ff;">private</span> <span style="color:#0000ff;">void</span> Window_Loaded(<span style="color:#0000ff;">object</span> sender, RoutedEventArgs e)
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 28:         {
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 29:             List&#60;StateInfo&#62; states = <span style="color:#0000ff;">new</span> List&#60;StateInfo&#62;();
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 30:
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 31:             states.Add(<span style="color:#0000ff;">new</span> StateInfo(&#34;<span style="color:#8b0000;">Maryland</span>&#34;, &#34;<span style="color:#8b0000;">Annapolis</span>&#34;, &#34;<span style="color:#8b0000;">Baltimore</span>&#34;, &#34;<span style="color:#8b0000;">Old Line State</span>&#34;));
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 32:             states.Add(<span style="color:#0000ff;">new</span> StateInfo(&#34;<span style="color:#8b0000;">Washington</span>&#34;, &#34;<span style="color:#8b0000;">Olympia</span>&#34;, &#34;<span style="color:#8b0000;">Seattle</span>&#34;, &#34;<span style="color:#8b0000;">The Evergreen State</span>&#34;));
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 33:             states.Add(<span style="color:#0000ff;">new</span> StateInfo(&#34;<span style="color:#8b0000;">California</span>&#34;, &#34;<span style="color:#8b0000;">Sacramento</span>&#34;, &#34;<span style="color:#8b0000;">Los Angeles</span>&#34;, &#34;<span style="color:#8b0000;">Golden State</span>&#34;));
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 34:             states.Add(<span style="color:#0000ff;">new</span> StateInfo(&#34;<span style="color:#8b0000;">Taxes</span>&#34;, &#34;<span style="color:#8b0000;">Austin</span>&#34;, &#34;<span style="color:#8b0000;">Houston</span>&#34;, &#34;<span style="color:#8b0000;">Lone Star State</span>&#34;));
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 35:             states.Add(<span style="color:#0000ff;">new</span> StateInfo(&#34;<span style="color:#8b0000;">New York</span>&#34;, &#34;<span style="color:#8b0000;">Albany</span>&#34;, &#34;<span style="color:#8b0000;">New York City</span>&#34;, &#34;<span style="color:#8b0000;">Empire State</span>&#34;));
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 36:
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 37:             lst.ItemsSource = states;
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 38:
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 39:         }
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 40:     }
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 41:
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 42:     <span style="color:#0000ff;">public</span> <span style="color:#0000ff;">class</span> StateInfo
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 43:     {
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 44:         <span style="color:#0000ff;">public</span> StateInfo(<span style="color:#0000ff;">string</span> name, <span style="color:#0000ff;">string</span> capital, <span style="color:#0000ff;">string</span> bigcity, <span style="color:#0000ff;">string</span> nickname)
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 45:         {
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 46:             Name = name;
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 47:             Capital = capital;
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 48:             BigCity = bigcity;
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 49:             NickName = nickname;
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 50:         }
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 51:
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 52:         <span style="color:#0000ff;">public</span> <span style="color:#0000ff;">string</span> Name
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 53:         { <span style="color:#0000ff;">get</span>; <span style="color:#0000ff;">set</span>; }
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 54:
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 55:         <span style="color:#0000ff;">public</span> <span style="color:#0000ff;">string</span> Capital
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 56:         { <span style="color:#0000ff;">get</span>; <span style="color:#0000ff;">set</span>; }
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 57:
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 58:         <span style="color:#0000ff;">public</span> <span style="color:#0000ff;">string</span> BigCity
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 59:         { <span style="color:#0000ff;">get</span>; <span style="color:#0000ff;">set</span>; }
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 60:
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 61:         <span style="color:#0000ff;">public</span> <span style="color:#0000ff;">string</span> NickName
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 62:         { <span style="color:#0000ff;">get</span>; <span style="color:#0000ff;">set</span>; }
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 63:     }
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 64:
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 65: }
</pre>
<pre style="font-size:11px;width:100%;font-family:consolas,&#39;background-color:#fbfbfb;margin:0;"> 66: </pre>
</pre>
<p>Here is the output of this program.</p>
<p><a href="http://zamjad.files.wordpress.com/2009/09/listboxexpender.gif"><img title="ListBoxExpender" style="display:block;float:none;margin-left:auto;margin-right:auto;border-width:0;" height="400" alt="ListBoxExpender" src="http://zamjad.files.wordpress.com/2009/09/listboxexpender_thumb.gif?w=400&#038;h=400" width="400" border="0" /></a></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[WhiteLABEL comPANION]]></title>
<link>http://ja.audiofanzine.com/2009/04/29/whitelabel-companion/</link>
<pubDate>Wed, 29 Apr 2009 12:10:35 +0000</pubDate>
<dc:creator>voxylady0622</dc:creator>
<guid>http://ja.audiofanzine.com/2009/04/29/whitelabel-companion/</guid>
<description><![CDATA[comPANION は、グラフィック・エンベロープを備えたコンプレッサー／エキスパンダー／ダイナミックツールだ。 音源のダイナミクスをスクリーン上にドラッグすることで望みのシェイプに描き直すことができ]]></description>
<content:encoded><![CDATA[comPANION は、グラフィック・エンベロープを備えたコンプレッサー／エキスパンダー／ダイナミックツールだ。 音源のダイナミクスをスクリーン上にドラッグすることで望みのシェイプに描き直すことができ]]></content:encoded>
</item>
<item>
<title><![CDATA[WPF 101 : Custom Expander Control to show a popup on mouse over]]></title>
<link>http://gargmanoj.wordpress.com/2009/03/29/wpf-101-custom-expander-control-to-show-a-popup-on-mouse-over/</link>
<pubDate>Sun, 29 Mar 2009 10:06:00 +0000</pubDate>
<dc:creator>Manoj Garg</dc:creator>
<guid>http://gargmanoj.wordpress.com/2009/03/29/wpf-101-custom-expander-control-to-show-a-popup-on-mouse-over/</guid>
<description><![CDATA[This is the second post in this WPF learning series. In this post I will be writing about creating y]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p align="justify">This is the second post in this WPF learning series. In this post I will be writing about creating your own custom controls in WPF. I am going to write a custom expander which has similar features as of the WPF expander control plus it will have a feature of showing a Popup on mouse over event of this expander. Content of this popup will be the content of the expander itself. This is the kind of feature where a user wants to see the content of expander while hovering the mouse over the expander header, just like IE8 tab quick preview where it shows a preview of tab content without even opening the tab. So below are our set of requirements:</p>
<p align="justify"><strong><span style="text-decoration:underline;">Requirements</span></strong></p>
<ul>
<li>
<div>It should be an expandable control with a header and content property.</div>
</li>
<li>
<div>It should show a popup when mouse is over the header and control is in collapsed state.</div>
</li>
<li>
<div>Should have an option for showing/hiding the popup.</div>
</li>
<li>
<div>Popup properties like position, size, transparency etc should be configurable.</div>
</li>
</ul>
<p align="justify"><strong><span style="text-decoration:underline;">Choosing the Proper base class</span></strong></p>
<p align="justify">While writing a custom control one must choose the base control which he/she wants to extend with little care with having all the features in mind. For our requirements, we need a base class which provides me a header, a content property. In WPF we have some choices like <strong><em>HeaderedContentControl</em></strong> class and we have an <strong><em>Expander</em></strong> class which itself drives from HeaderedContentControl class. we can use any of them. I decided to use Expander class (well while coding I wasn’t sure what all I wanted to have <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  ).</p>
<p><strong><span style="text-decoration:underline;">Implementation</span></strong></p>
<p align="justify">Visual studio 2008 provides a project of type “WPF Custom Control Library” which can be used as a starting point for writing your first custom control. Following figure shows the selection of new project type.</p>
<p align="justify"><a href="http://gargmanoj.files.wordpress.com/2009/03/newcustomcontrol.png"><img style="border-right:0;border-top:0;display:inline;border-left:0;border-bottom:0;" title="newcustomcontrol" src="http://gargmanoj.files.wordpress.com/2009/03/newcustomcontrol-thumb.png?w=471&#038;h=371" border="0" alt="newcustomcontrol" width="471" height="371" /></a></p>
<p align="justify">When adding this project type to your visual studio solution, it will add a new project with following items to your solution structure:</p>
<ol>
<li>
<div><strong><span style="text-decoration:underline;">CustomControl1.cs</span></strong>: This file contains your custom control class.</div>
</li>
<li>
<div><strong><span style="text-decoration:underline;">Themes Folder with Generic.xaml</span></strong>: This folder will contain the styles for all your custom controls. By default a new style for the customcontrol1 is added to the generic.xaml. One needs to change this style to work with this custom control.</div>
</li>
</ol>
<p align="justify">Lets start implementing the new expander with popup. As we have decided we will be using <strong><em>Expander</em></strong> class as the base class for our control. I will be naming this control as <strong><em>CustomExpander.</em></strong></p>
<pre style="min-height:40px;overflow:auto;width:554px;height:207px;background-color:#fbfbfb;border:#cecece 1px solid;padding:5px;">
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;">  1: <span style="color:#0000ff;">namespace</span> CustomControls</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;">  2: {</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;">  3:     <span style="color:#808080;">/// &#60;summary&#62;</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;">  4:     <span style="color:#808080;">/// This class is an extention to Expander Control. </span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;">  5:     <span style="color:#808080;">/// This provides a feature for shouwing a popup with the content of the expander on MouseOver</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;">  6:     <span style="color:#808080;">/// &#60;/summary&#62;</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;">  7:     <span style="color:#0000ff;">public</span> <span style="color:#0000ff;">class</span> CustomExpander : Expander</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;">  8:     {</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;">  9:         #region <span style="color:#008000;">// .ctor(s)</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 10:         <span style="color:#0000ff;">static</span> CustomExpander()</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 11:         {</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#80ff00;margin:0;"> 12:             DefaultStyleKeyProperty.OverrideMetadata(<span style="color:#0000ff;">typeof</span>(CustomExpander), <span style="color:#0000ff;">new</span> FrameworkPropertyMetadata(<span style="color:#0000ff;">typeof</span>(CustomExpander)));</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 13:         }</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 14:         <span style="color:#0000ff;">public</span> CustomExpander()</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 15:         {</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 16:         }</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 17:         #endregion</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 18:     }</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 19: }</pre>
</pre>
<p align="justify">The above class definition has a static ctor and a normal default ctor for the <strong><em>CustomExpander</em></strong> class. The static ctor is used to initialize the static properties of the class as well as changing the default style for the control. As highlighted in the above code snippet in line 12, <strong><em>DefaultStyleKeyProperty</em></strong> is used to change the default style for the control by passing the type of the new control.</p>
<p align="justify">Now we have to decide upon what all configurable properties we want to expose to the end user of this control. As mentioned in the requirement section above, we will have following dependency properties in our control:</p>
<ol>
<li>
<div><strong><span style="text-decoration:underline;">PopUpPlacementModeProperty</span></strong>: This property will allow user to configure the placement of popup in the screen. This is of type <em><strong>PlacementMode</strong></em>.</div>
</li>
<li>
<div><strong><span style="text-decoration:underline;">StaysOpenProperty</span></strong>: This property defines whether the popup will stay open when the popup looses focus. This is of type <em>Boolean</em>.</div>
</li>
<li>
<div><strong><span style="text-decoration:underline;">AllowsTransparencyProperty</span></strong>: This property allows user to set the transparency for the popup. This is a Boolean value.</div>
</li>
<li>
<div><strong><span style="text-decoration:underline;">PopUpWidthProperty</span></strong>: Width of the popup. This is of type <em>Double</em></div>
</li>
<li>
<div><strong><span style="text-decoration:underline;">PopUpHeightProperty</span></strong>: Height of the popup. This is of type <em>Double</em></div>
</li>
</ol>
<p align="justify">Now lets us decide what controls we will be using to give this control a look of an Expander. For Expander functionality I will use ToggleButton control and a ContentPresenter control. since toggle button has the notion of being in two state (clicked and non clicked), so these state we can use to denote expanded and collapsed state of the expander. For popup functionality we will use wpf PopUp control.</p>
<p align="justify">So here is our task, on mouse hover on the togglebutton, set content of the expander as the child of  popup. and on click of the expander show the contentpresenter . <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />   simple enough .. hmmmmmm</p>
<p align="justify">But here comes the issue. As we are talking about setting the content of popup same as the content of the expander but any object/ control can be child of only one parent. So we need make sure that while we show the popup or expand the expander only one of them have their content property set and the other one has this as null. To accomplish this we need one more dependency property which will store the content of the expander and we will use this property as the child for popup as well expander but only one at a time.</p>
<pre style="min-height:40px;overflow:auto;width:540px;height:176px;background-color:#fbfbfb;border:#cecece 1px solid;padding:5px;">
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;">  1: <span style="color:#0000ff;">public</span> <span style="color:#0000ff;">static</span> <span style="color:#0000ff;">readonly</span> DependencyProperty OldContentProperty =</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;">  2:                    DependencyProperty.Register("<span style="color:#8b0000;">OldContent</span>", <span style="color:#0000ff;">typeof</span>(<span style="color:#0000ff;">object</span>), <span style="color:#0000ff;">typeof</span>(CustomExpander));</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;">  3:</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;">  4: <span style="color:#0000ff;">private</span> <span style="color:#0000ff;">object</span> OldContent</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;">  5: {</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;">  6:      <span style="color:#0000ff;">get</span> { <span style="color:#0000ff;">return</span> GetValue(OldContentProperty); }</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;">  7:      <span style="color:#0000ff;">set</span> { SetValue(OldContentProperty, <span style="color:#0000ff;">value</span>); }</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;">  8: }</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;">  9:</pre>
</pre>
<p align="justify">Now lets create the style for Expander. First lets design the header for the Expander. So we need a circle with an arrow indicating the expand/collapse direction and a content presenter showing the text of the header. Following code shows the style for the toggle button header.</p>
<pre style="min-height:40px;overflow:auto;width:544px;height:254px;background-color:#fbfbfb;border:#cecece 1px solid;padding:5px;">
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;">  1: &#60;!-- Style <span style="color:#0000ff;">for</span> the toggle button which wil be used <span style="color:#0000ff;">as</span> expander header --&#62;</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;">  2: &#60;Style TargetType="<span style="color:#8b0000;">{x:Type ToggleButton}</span>" x:Key="<span style="color:#8b0000;">toggleButtonKey</span>"&#62;</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;">  3:      &#60;Setter Property="<span style="color:#8b0000;">Template</span>"&#62;</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;">  4:           &#60;Setter.Value&#62;</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;">  5:                 &#60;ControlTemplate TargetType="<span style="color:#8b0000;">{x:Type ToggleButton}</span>"&#62;</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;">  6:                        &#60;StackPanel Orientation="<span style="color:#8b0000;">Horizontal</span>"</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;">  7:                                  Margin="<span style="color:#8b0000;">{TemplateBinding Padding}</span>"&#62;</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;">  8:                               &#60;Grid Background="<span style="color:#8b0000;">Transparent</span>"&#62;</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;">  9:                                    &#60;!-- Circles <span style="color:#0000ff;">for</span> the expander header containg the expand direction arrow --&#62;</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 10:                                    &#60;Ellipse x:Name="<span style="color:#8b0000;">circle</span>"</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 11:                                             HorizontalAlignment="<span style="color:#8b0000;">Center</span>" VerticalAlignment="<span style="color:#8b0000;">Center</span>"</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 12:                                             Width="<span style="color:#8b0000;">20</span>" Height="<span style="color:#8b0000;">20</span>"</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 13:                                             Stroke="<span style="color:#8b0000;">DarkGray</span>"/&#62;</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 14:                                    &#60;Ellipse x:Name="<span style="color:#8b0000;">shadow</span>" Visibility="<span style="color:#8b0000;">Hidden</span>"</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 15:                                             HorizontalAlignment="<span style="color:#8b0000;">Center</span>" VerticalAlignment="<span style="color:#8b0000;">Center</span>"</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 16:                                             Width="<span style="color:#8b0000;">17</span>" Height="<span style="color:#8b0000;">17</span>" /&#62;</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 17:</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 18:                                    &#60;!-- Expand direction Arrow --&#62;</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 19:                                    &#60;Path x:Name="<span style="color:#8b0000;">arrow</span>"</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 20:                                             VerticalAlignment="<span style="color:#8b0000;">Center</span>" HorizontalAlignment="<span style="color:#8b0000;">Center</span>"</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 21:                                             Stroke="<span style="color:#8b0000;">#666</span>" StrokeThickness="<span style="color:#8b0000;">2</span>"</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 22:                                             Data="<span style="color:#8b0000;">M1,1 L4,4 7,1</span>" /&#62;</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 23:                               &#60;/Grid&#62;</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 24:</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 25:                               &#60;!-- Expander Header Content --&#62;</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 26:                               &#60;ContentPresenter ContentSource="<span style="color:#8b0000;">{TemplateBinding Content}</span>" Grid.Column="<span style="color:#8b0000;">1</span>" Margin="<span style="color:#8b0000;">5</span>"/&#62;</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 27:                        &#60;/StackPanel&#62;</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 28:</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 29:                        &#60;ControlTemplate.Triggers&#62;</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 30:                              &#60;!-- Trigger to change the arrow direction when expanded --&#62;</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 31:                              &#60;Trigger Property="<span style="color:#8b0000;">IsChecked</span>" Value="<span style="color:#8b0000;">true</span>"&#62;</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 32:                                     &#60;Setter TargetName="<span style="color:#8b0000;">arrow</span>"</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 33:                                             Property="<span style="color:#8b0000;">Data</span>" Value="<span style="color:#8b0000;">M 1,4  L 4,1  L 7,4</span>"/&#62;</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 34:                              &#60;/Trigger&#62;</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 35:</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 36:                              &#60;!-- Trigger to give a mouse over effect on the circle containing direction arrow --&#62;</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 37:                              &#60;Trigger Property="<span style="color:#8b0000;">IsMouseOver</span>" Value="<span style="color:#8b0000;">true</span>"&#62;</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 38:                                     &#60;Setter TargetName="<span style="color:#8b0000;">circle</span>"</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 39:                                             Property="<span style="color:#8b0000;">Stroke</span>" Value="<span style="color:#8b0000;">#666</span>"/&#62;</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 40:                                     &#60;Setter TargetName="<span style="color:#8b0000;">arrow</span>"</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 41:                                             Property="<span style="color:#8b0000;">Stroke</span>" Value="<span style="color:#8b0000;">#222</span>"/&#62;</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 42:                                     &#60;Setter TargetName="<span style="color:#8b0000;">shadow</span>"</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 43:                                             Property="<span style="color:#8b0000;">Visibility</span>" Value="<span style="color:#8b0000;">Visible</span>"/&#62;</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 44:                               &#60;/Trigger&#62;</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 45:                       &#60;/ControlTemplate.Triggers&#62;</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 46:               &#60;/ControlTemplate&#62;</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 47:         &#60;/Setter.Value&#62;</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 48:    &#60;/Setter&#62;</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 49: &#60;/Style&#62;</pre>
</pre>
<p>Now the expander content and popup.</p>
<pre style="min-height:40px;overflow:auto;width:547px;height:262px;background-color:#fbfbfb;border:#cecece 1px solid;padding:5px;">
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;">  1: <span style="color:#008000;">&#60;!-- Expander --&#62;</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;">  2:                             <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">StackPanel</span><span style="color:#0000ff;">&#62;</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;">  3:                                     <span style="color:#008000;">&#60;!-- Expander Header --&#62;</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;">  4:                                     <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">ToggleButton</span> <span style="color:#ff0000;">x</span>:<span style="color:#ff0000;">Name</span>=<span style="color:#0000ff;">"expanderHeader"</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;">  5:                                               <span style="color:#ff0000;">Style</span>=<span style="color:#0000ff;">"{StaticResource toggleButtonKey}"</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;">  6:                                               <span style="color:#ff0000;">Content</span>=<span style="color:#0000ff;">"{TemplateBinding Header}"</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;">  7:                                               <span style="color:#ff0000;">Padding</span>=<span style="color:#0000ff;">"{TemplateBinding Padding}"</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;">  8:                                               <span style="color:#ff0000;">IsChecked</span>=<span style="color:#0000ff;">"{Binding RelativeSource={RelativeSource TemplatedParent}, Path=IsExpanded,Mode=TwoWay}"</span><span style="color:#0000ff;">/&#62;</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;">  9:</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 10:                                     <span style="color:#008000;">&#60;!-- Expander Content --&#62;</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 11:                                     <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">ContentPresenter</span> <span style="color:#ff0000;">x</span>:<span style="color:#ff0000;">Name</span>=<span style="color:#0000ff;">"expanderContent"</span><span style="color:#0000ff;">/&#62;</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 12:                             <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">StackPanel</span><span style="color:#0000ff;">&#62;</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 13:</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 14:                             <span style="color:#008000;">&#60;!-- PopUp control which will be showing the content of expander on mouse over --&#62;</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 15:                             <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">Popup</span> <span style="color:#ff0000;">x</span>:<span style="color:#ff0000;">Name</span>=<span style="color:#0000ff;">"contentPopUp"</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 16:                                    <span style="color:#ff0000;">IsOpen</span>=<span style="color:#0000ff;">"False"</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 17:                                    <span style="color:#ff0000;">Placement</span>=<span style="color:#0000ff;">"{TemplateBinding PopUpPlacementMode}"</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 18:                                    <span style="color:#ff0000;">AllowsTransparency</span> = <span style="color:#0000ff;">"{TemplateBinding AllowsTransparency}"</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 19:                                    <span style="color:#ff0000;">StaysOpen</span> = <span style="color:#0000ff;">"{TemplateBinding StaysOpen}"</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 20:                                    <span style="color:#ff0000;">Width</span>=<span style="color:#0000ff;">"{TemplateBinding PopUpWidth}"</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 21:                                    <span style="color:#ff0000;">Height</span>=<span style="color:#0000ff;">"{TemplateBinding PopUpHeight}"</span><span style="color:#0000ff;">&#62;</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 22:                             <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">Popup</span><span style="color:#0000ff;">&#62;</span></pre>
</pre>
<p>Finally the triggers which would show the popup on mouse over and set the content.</p>
<pre style="min-height:40px;overflow:auto;width:549px;height:258px;background-color:#fbfbfb;border:#cecece 1px solid;padding:5px;">
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;">  1: <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">ControlTemplate.Triggers</span><span style="color:#0000ff;">&#62;</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;">  2:                         <span style="color:#008000;">&#60;!-- Trigger for showing the popup when Expander control is not expanded and IsMouseOver is true  --&#62;</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;">  3:                         <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">MultiTrigger</span><span style="color:#0000ff;">&#62;</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;">  4:                             <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">MultiTrigger.Conditions</span><span style="color:#0000ff;">&#62;</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;">  5:                                 <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">Condition</span> <span style="color:#ff0000;">SourceName</span>=<span style="color:#0000ff;">"expanderHeader"</span> <span style="color:#ff0000;">Property</span>=<span style="color:#0000ff;">"IsMouseOver"</span> <span style="color:#ff0000;">Value</span>=<span style="color:#0000ff;">"True"</span><span style="color:#0000ff;">&#62;</span><span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">Condition</span><span style="color:#0000ff;">&#62;</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;">  6:                                 <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">Condition</span> <span style="color:#ff0000;">SourceName</span>=<span style="color:#0000ff;">"expanderHeader"</span> <span style="color:#ff0000;">Property</span>=<span style="color:#0000ff;">"IsChecked"</span> <span style="color:#ff0000;">Value</span>=<span style="color:#0000ff;">"False"</span><span style="color:#0000ff;">&#62;</span><span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">Condition</span><span style="color:#0000ff;">&#62;</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;">  7:                             <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">MultiTrigger.Conditions</span><span style="color:#0000ff;">&#62;</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;">  8:                             <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">Setter</span> <span style="color:#ff0000;">TargetName</span>=<span style="color:#0000ff;">"expanderContent"</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;">  9:                                     <span style="color:#ff0000;">Property</span>=<span style="color:#0000ff;">"Content"</span> <span style="color:#ff0000;">Value</span>=<span style="color:#0000ff;">"{x:Null}"</span><span style="color:#0000ff;">&#62;</span><span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">Setter</span><span style="color:#0000ff;">&#62;</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 10:                             <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">Setter</span> <span style="color:#ff0000;">TargetName</span>=<span style="color:#0000ff;">"contentPopUp"</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 11:                                     <span style="color:#ff0000;">Property</span>=<span style="color:#0000ff;">"Child"</span> <span style="color:#ff0000;">Value</span>=<span style="color:#0000ff;">"{Binding RelativeSource={RelativeSource TemplatedParent}, Path=OldContent,Mode=OneWay,Converter={StaticResource localConverter}}"</span><span style="color:#0000ff;">&#62;</span><span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">Setter</span><span style="color:#0000ff;">&#62;</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 12:                             <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">Setter</span> <span style="color:#ff0000;">TargetName</span>=<span style="color:#0000ff;">"contentPopUp"</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 13:                                     <span style="color:#ff0000;">Property</span>=<span style="color:#0000ff;">"BitmapEffect"</span> <span style="color:#ff0000;">Value</span>=<span style="color:#0000ff;">"{StaticResource outerGlow}"</span><span style="color:#0000ff;">&#62;</span><span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">Setter</span><span style="color:#0000ff;">&#62;</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 14:                             <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">Setter</span> <span style="color:#ff0000;">TargetName</span>=<span style="color:#0000ff;">"contentPopUp"</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 15:                                     <span style="color:#ff0000;">Property</span>=<span style="color:#0000ff;">"IsOpen"</span> <span style="color:#ff0000;">Value</span>=<span style="color:#0000ff;">"True"</span><span style="color:#0000ff;">&#62;</span><span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">Setter</span><span style="color:#0000ff;">&#62;</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 16:                         <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">MultiTrigger</span><span style="color:#0000ff;">&#62;</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 17:</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 18:                         <span style="color:#008000;">&#60;!-- Trigger for clearing the content of PopUp control when mouse is not over the expander control --&#62;</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 19:                         <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">Trigger</span> <span style="color:#ff0000;">SourceName</span>=<span style="color:#0000ff;">"expanderHeader"</span> <span style="color:#ff0000;">Property</span>=<span style="color:#0000ff;">"IsMouseOver"</span> <span style="color:#ff0000;">Value</span>=<span style="color:#0000ff;">"False"</span><span style="color:#0000ff;">&#62;</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 20:                             <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">Setter</span> <span style="color:#ff0000;">TargetName</span>=<span style="color:#0000ff;">"contentPopUp"</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 21:                                     <span style="color:#ff0000;">Property</span>=<span style="color:#0000ff;">"Child"</span> <span style="color:#ff0000;">Value</span>=<span style="color:#0000ff;">"{x:Null}"</span><span style="color:#0000ff;">&#62;</span><span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">Setter</span><span style="color:#0000ff;">&#62;</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 22:                         <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">Trigger</span><span style="color:#0000ff;">&#62;</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 23:</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 24:                         <span style="color:#008000;">&#60;!-- Trigger for setting the content of expander when IsExpanded is true --&#62;</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 25:                         <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">Trigger</span> <span style="color:#ff0000;">SourceName</span>=<span style="color:#0000ff;">"expanderHeader"</span> <span style="color:#ff0000;">Property</span>=<span style="color:#0000ff;">"IsChecked"</span> <span style="color:#ff0000;">Value</span>=<span style="color:#0000ff;">"True"</span><span style="color:#0000ff;">&#62;</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 26:                             <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">Setter</span> <span style="color:#ff0000;">TargetName</span>=<span style="color:#0000ff;">"contentPopUp"</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 27:                                     <span style="color:#ff0000;">Property</span>=<span style="color:#0000ff;">"Child"</span> <span style="color:#ff0000;">Value</span>=<span style="color:#0000ff;">"{x:Null}"</span><span style="color:#0000ff;">&#62;</span><span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">Setter</span><span style="color:#0000ff;">&#62;</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 28:                             <span style="color:#0000ff;">&#60;</span><span style="color:#800000;">Setter</span> <span style="color:#ff0000;">TargetName</span>=<span style="color:#0000ff;">"expanderContent"</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 29:                                     <span style="color:#ff0000;">Property</span>=<span style="color:#0000ff;">"Content"</span> <span style="color:#ff0000;">Value</span>=<span style="color:#0000ff;">"{Binding RelativeSource={RelativeSource TemplatedParent}, Path=OldContent,Mode=OneWay}"</span><span style="color:#0000ff;">&#62;</span><span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">Setter</span><span style="color:#0000ff;">&#62;</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 30:                         <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">Trigger</span><span style="color:#0000ff;">&#62;</span></pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;"> 31:                     <span style="color:#0000ff;">&#60;/</span><span style="color:#800000;">ControlTemplate.Triggers</span><span style="color:#0000ff;">&#62;</span></pre>
</pre>
<p align="justify">So this makes our code complete. But now as we have an option to configure the width and height of the popup. So the behavior of the popup should be something like this, It should zoom in / zoom out it self depending on the size of the content and the dimensions declared by the control user. Here comes the <strong><em>ViewBox</em></strong> wpf control. This control is made to do this. It adjusts its content according to the width/height of the viewbox. So what I will do is, I will make the content of expander as the content of a viewbox and will store this viewbox as the value of OldContent property. This will be done when the template is being applied to the control in <strong><em>OnApplyTemplate</em></strong> method. So I will override this method in our control class and store the content value.</p>
<pre style="min-height:40px;overflow:auto;width:562px;height:224px;background-color:#fbfbfb;border:#cecece 1px solid;padding:5px;">
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;">  1: <span style="color:#0000ff;">public</span> <span style="color:#0000ff;">override</span> <span style="color:#0000ff;">void</span> OnApplyTemplate()</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;">  2:         {</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;">  3:             <span style="color:#0000ff;">base</span>.OnApplyTemplate();</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;">  4:             <span style="color:#0000ff;">object</span> tmpContent = <span style="color:#0000ff;">this</span>.Content;</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;">  5:             <span style="color:#0000ff;">this</span>.Content = <span style="color:#0000ff;">null</span>;</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;">  6:</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;">  7:             Viewbox containerViewBox = <span style="color:#0000ff;">new</span> Viewbox();</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;">  8:             containerViewBox.Child = (UIElement)tmpContent;</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#fbfbfb;margin:0;">  9:             OldContent = containerViewBox;</pre>
<pre style="font-size:12px;width:100%;font-family:consolas,'Courier New',courier,monospace;background-color:#ffffff;margin:0;"> 10:         }</pre>
</pre>
<p align="justify">Complete source code is available <a href="http://gargmanoj.files.wordpress.com/2009/03/customexpandercontrolzip.doc" target="_blank">here</a>.</p>
<p align="justify"><span style="color:#0000ff;font-size:x-small;">[PS: Please change the extension of file from .DOC to .ZIP]</span></p>
<p align="justify"><span style="color:#0000ff;font-size:x-small;">Ha-P Coding <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </span></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Outlook Style Expander With XAML Only]]></title>
<link>http://richapps.wordpress.com/2009/02/22/outlook-style-expander-with-xaml-only/</link>
<pubDate>Sun, 22 Feb 2009 13:04:54 +0000</pubDate>
<dc:creator>Murugan</dc:creator>
<guid>http://richapps.wordpress.com/2009/02/22/outlook-style-expander-with-xaml-only/</guid>
<description><![CDATA[Outlook will have collapsible left panel. If the panel is collapsed content will be displayed in the]]></description>
<content:encoded><![CDATA[Outlook will have collapsible left panel. If the panel is collapsed content will be displayed in the]]></content:encoded>
</item>
<item>
<title><![CDATA[Schlechtes Wetter ist keine Ausrede! Jetzt einkaufen im neuen Sport Online Shop]]></title>
<link>http://opusmarketing.wordpress.com/2009/02/17/schlechtes-wetter-ist-keine-ausrede-jetzt-einkaufen-im-neuen-sport-online-shop/</link>
<pubDate>Tue, 17 Feb 2009 11:26:41 +0000</pubDate>
<dc:creator>Mindfactory</dc:creator>
<guid>http://opusmarketing.wordpress.com/2009/02/17/schlechtes-wetter-ist-keine-ausrede-jetzt-einkaufen-im-neuen-sport-online-shop/</guid>
<description><![CDATA[Sport bei Schnee und Eis. Besonders Sportmuffel nutzen das kalte Winterwetter als dankbare Ausrede, ]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><h2>Sport bei Schnee und Eis.</h2>
<p>Besonders Sportmuffel nutzen das kalte Winterwetter als dankbare Ausrede, um sich vor dem Sport zu drücken. Doch auch im Winter sind vielfältige Möglichkeiten geboten, sich ohne zu frieren mit ein bisschen Sport fit zu halten &#8211; wie der Onlineshop <a title="Sport Onlineshop Startseite" href="http://das-sportlet.de/" target="_blank">das sportlet</a> beweist. Ob Fitnessgeräte, Sportbekleidung oder Zubehör für verschiedene Hallensportarten, hier wird jeder fündig.</p>
<h2>Fitnessgeräte &#8211; das Studio zu Hause</h2>
<p>Wer keine Lust auf ein Fitnessstudio hat, der ist mit den <a title="Sport Online-Shop Fitnessgeräte und Crosstrainer" href="http://www.das-sportlet.de/index.php/cat/c1_Fitnessgeraete.html/XTCsid/ulklbkc8e19mdogupaqak56ug2" target="_blank">Fitnessgeräten und Crosstrainern</a> des Onlineshops gut beraten. Die hochwertigen <a title="Sportonlineshop Kettler Fitnessgeräte" href="http://www.das-sportlet.de/index.php/cat/c223_KETTLER.html" target="_blank">Kettler Ergometer</a>, <a title="Sport Webshop Energetics Fitnessgeräte" href="http://www.das-sportlet.de/index.php/cat/c225_ENERGETICS.html" target="_blank">Energetics Heimtrainer</a> und <a title="Sportwebshop Horizon Fitnessgeräte" href="http://www.das-sportlet.de/index.php/cat/c224_HORIZON.html" target="_blank">Horizon Crosstrainer</a> sind für das Trainieren zu Hause ideal. Klein anfangen kann man mit Physioball, Hebegürtel, Hantel, Springseil und Co. Damit verschwindet auch der letzte Rest vom Winterspeck, der sich über Weihnachten und Silvester angesammelt hat. Und das Beste: Die Fitnessgeräte und Crosstrainer können ganz bequem geleast werden.</p>
<h2>Sportbekleidung &#8211; alles sitzt</h2>
<p>Die schönste Sportart kann durch schlecht sitzende Sportkleidung vermiest werden, wenn ständig etwas kratzt oder rutscht. Der Onlineshop das sportlet bietet deshalb eine große Auswahl an hochwertiger<a title="Sport-Onlineshop Sportbekleidung" href="http://www.das-sportlet.de/index.php/cat/c2_Sport-Bekleidung.html" target="_blank"> Sportbekleidung</a> an. Ob <a title="Sportonlineshop Jack Wolfskin Sportbekleidung" href="http://www.das-sportlet.de/index.php/cat/c286_JACK-WOLFSKIN.html" target="_blank">Fleecepullover von Jack Wolfskin</a>, eine <a title="Sport Online-Shop McKinley Sportbekleidung" href="http://www.das-sportlet.de/index.php/cat/c285_McKINLEY.html" target="_blank">Jacke von McKinley</a>, eine <a title="Sport-Webshop Pro Touch Sportbekleidung" href="http://www.das-sportlet.de/index.php/cat/c233_PRO-TOUCH.html" target="_blank">Pro Touch Präsentationshose</a> oder ein <a title="Sport Onlineshop Nakamura Sportbekleidung" href="http://www.das-sportlet.de/index.php/cat/c235_NAKAMURA.html" target="_blank">Nakamura Radtrikot</a> &#8211; die namhaften Hersteller sorgen für eine angenehme Qualität und optimale Verarbeitung. Praktisch verpackt wird die Kleidung in den Pro Touch <a title="Sportonlineshop Sporttaschen" href="http://www.das-sportlet.de/index.php/cat/c200_Sporttaschen.html" target="_blank">Sporttaschen</a>.</p>
<h2>Sportschuhe &#8211; die halten was aus</h2>
<p>Um Sportunfälle und Haltungsschäden zu vermeiden, sollte man bei der Auswahl der richtigen <a title="Sportwebshop Sportschuhe" href="http://www.das-sportlet.de/index.php/cat/c292_Sportschuhe.html" target="_blank">Sportschuhe</a> ganz besondere Sorgfalt walten lassen. Ob <a title="Sport Online-Shop Sportschuhe Adidas" href="http://www.das-sportlet.de/index.php/cat/c189_Fu-ballschuhe.html" target="_blank">Adidas Fußballschuhe</a> oder <a title="Sport Onlineshop Schuhpflege McKinley" href="http://www.das-sportlet.de/index.php/cat/c218_Schuhpflege.html" target="_blank">McKinley Schuhpflege</a> und Schnürsenkel, der Onlineshop das sportlet bietet nur die beste Qualität.</p>
<h2><a title="Sportwebshop Boxen" href="http://www.das-sportlet.de/index.php/cat/c243_Boxen.html" target="_blank">Boxen</a>, <a title="Sport Online-Shop Handball" href="http://www.das-sportlet.de/index.php/cat/c148_Handball.html" target="_blank">Handball</a> und Co. &#8211; Sportarten für drinnen</h2>
<p>Wem es im Winter für Sport draußen zu kalt ist, der findet in der großen Auswahl an Hallensportarten bestimmt seinen Favoriten. Zum Beispiel wird im Onlineshop das sportlet neben einem großen Sortiment an <a title="Sport Web-Shop Boxen Boxsäcke" href="http://www.das-sportlet.de/index.php/cat/c7_Boxsaecke.html" target="_blank">Sandsäcken</a> auch Box-Zubehör, wie der Karl Schmidt Zahnschutz, der Energetics Kopfschutz oder das Pro Touch Boxsack Decken-Drehgelenk angeboten.<br />
Handballer dürfen sich über die hohe Qualität der <a title="Sportonlineshop Trace Knieschutz" href="http://www.das-sportlet.de/index.php/cat/c165_Schutz.html" target="_blank">Trace Knieschützer</a> freuen. Fans von <a title="Sport Online-Shop Tischtennis" href="http://www.das-sportlet.de/index.php/cat/c238_Tischtennis.html" target="_blank">Tischtennis</a> dagegen haben die Wahl zwischen Tecno Pro Turniergarnituren, <a title="Sportonlineshop Tischtennis Tischtennisschläger" href="http://www.das-sportlet.de/index.php/cat/c102_Tecno-Pro.html" target="_blank">Schlägern</a>, Reinigungsutensilien und vielem mehr.</p>
<h2><a title="Sport Onlineshop Wintersport" href="http://www.das-sportlet.de/index.php/cat/c279_Wintersport.html" target="_blank">Wintersport</a> &#8211; da ist was los</h2>
<p>Die weißen Schneemassen laden zum Skifahren ein. Zum Glück gibt es im Onlineshop das sportlet für jeden die richtigen Skier. Ob Tecno Pro Skier und Fischer Schuppenskier für den <a title="Sport Webshop Wintersport Langlauf" href="http://www.das-sportlet.de/index.php/cat/c114_Langlauf.html" target="_blank">Langlauf</a> oder <a title="Sportonlineshop Wintersport Völklski" href="http://www.das-sportlet.de/index.php/cat/c280_Voelklski.html" target="_blank">Völklskier</a> für die Abfahrt, hier wird jeder fündig. Tigershark und Racetiger, die Namen der Völklskier sind Programm, denn mit diesen Skiern setzt man auf Geschwindigkeit.</p>
<h2><a title="Sportwebshop Wassersport" href="http://www.das-sportlet.de/index.php/cat/c170_Wassersport.html" target="_blank">Wassersport</a> &#8211; für den Sommer üben</h2>
<p>Mit der richtigen Ausrüstung kommt selbst in den Hallenbädern eine Sommer-Urlaubs-Stimmung auf. Mit Pro Touch <a title="Sport Online-Shop Badesandalen" href="http://www.das-sportlet.de/index.php/cat/c171_Baden---Beach.html" target="_blank">Badesandale</a>, Beco <a title="Sportonlineshop Schwimmhilfe" href="http://www.das-sportlet.de/index.php/cat/c172_Schwimmen.html" target="_blank">Schwimmhilfe </a>oder Tecno Pro<a title="Sport Online Shop Tauchmasken" href="http://www.das-sportlet.de/index.php/cat/c172_Schwimmen.html" target="_blank"> Tauchmaske</a> ist man für das kühle Nass perfekt ausgerüstet.</p>
<p>Bei diesen zahlreichen Angeboten lohnt es sich wirklich, einmal unter <a title="Sport Online Shop Startseite" href="http://www.das-sportlet.de/" target="_blank">www.das-sportlet.de</a> nach dem perfekten Sportartikel zu suchen, den inneren Schweinehund zu bekämpfen und sich bei seiner neuen Lieblingssportart so richtig auszupowern.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Opinión de usuario : Roland MX-200]]></title>
<link>http://audiofanzines.wordpress.com/2008/12/18/opinion-de-usuario-roland-mx-200/</link>
<pubDate>Thu, 18 Dec 2008 23:25:57 +0000</pubDate>
<dc:creator>kaelee</dc:creator>
<guid>http://audiofanzines.wordpress.com/2008/12/18/opinion-de-usuario-roland-mx-200/</guid>
<description><![CDATA[Características : 9/10 Expander dedicado a las sonoridades de órganos litúrgicos. Lleva entrada y sa]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><img class="alignright size-full wp-image-2538" title="roland" src="http://audiofanzines.wordpress.com/files/2008/12/roland.jpg" alt="roland" width="220" height="48" /><span><strong>Características : 9/10</strong></span></p>
<p><span>Expander dedicado a las sonoridades de órganos litúrgicos.</span></p>
<p><span>Lleva entrada y salida y thru MIDI, auxiliar L/R, salidas jack mono y estéreo.</span></p>
<p><span>Posibilidad de extensión para tarjetas SRX de Roland.</span></p>
<p><span>Implantación GM2.</span></p>
<p><span>Acabados finos con partes laterales de madera natural.</span></p>
<p> </p>
<p><span><strong>Utilización : 7/10</strong></span></p>
<p><span>El manual de usuario es más o menos claro, una pantalla LCD un poco más grande fuese mejor para visualizar mensajes de manera más eficaz. La manipulación de las varias funciones no es siempre intuitiva, es un poco justo&#8230; La pantalla no muestra más de 3 dígitos.</span></p>
<p><span>En resumen, es un poco complicado controlarlo al principio, tampoco es muy fácil de recordar la edición de los diversos menús.</span></p>
<p> </p>
<p><span><strong>Sonoridades : 9/10</strong></span></p>
<p><span>Los sonidos se dividen en dos familias : sonidos de órgano y otros sonidos.</span></p>
<p><span>Los sonidos dedicados a los órganos litúrgicos (flue/reed/mix/pedalera&#8230;) parecen bastante realistas, suenan bien, con sonoridades quedas y lindas definiciones.</span></p>
<p><span>Los otros sonidos (pianos acústicos y eléctricos, órganos eléctricos, cuerdas, percusiones, metales&#8230;) también son bien logrados, los sonidos de orquesta permiten realizar ambientes tipo películas, todo en alta definición, con varios parámetros de edición (reverb, ecualización, pitch&#8230;) que dan aún más dimensión a las sonoridades.</span></p>
<p> </p>
<p><span><strong>Opinión Global : 9/10</strong></span></p>
<p><span>Advertencia : este expander se maneja normalmente con un órgano Rodgers, pero se puede manejar como cualquier otro expander. Sin embargo tiene funciones especiales que sólo son compatibles con los mensajes MIDI de un Rodgers.</span></p>
<p><span>En realidad existe poca información acerca de este expander y las pocas info no tratan este tema claramente.</span></p>
<p><span>La publicidad gallardea algunos 1000 sonidos pero en realidad embarca menos de 300, los otros vienen del modo GM2 y otros mensajes MSB/LSB que no puede manejar cualquier teclado.</span></p>
<p><span>Por eso lo quiero especificar, cuando he comprado este expander sin saberlo. Globalmente no me ha decepcionado aunque esté bastante caro. Por cierto incluye sonidos pocos comunes y simpáticos, pero afortunadamente permite añadir tarjetas de sonidos SRX, lo que amortigua un poco la inversión. La mayoría de los sonidos litúrgicos son bastante originales y difíciles de encontrar en otros materiales que generan sonidos, o teclados. Rodgers es una referencia en la gama de órganos litúrgicos numéricos presente en iglesias ; este expander está distribuido por Roland pero tiene la firma de Rodgers que es una filial de Roland.</span></p>
<p> </p>
<p><span><em>Traducido de la opinión de Adrimed en AudioFanzine en Francés</em></span></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[How do I access the linksys WRE54g range expander’s web-based setup page?]]></title>
<link>http://cowboy3398.wordpress.com/2008/07/16/how-do-i-access-the-linksys-wre54g-range-expander%e2%80%99s-web-based-setup-page/</link>
<pubDate>Wed, 16 Jul 2008 17:25:15 +0000</pubDate>
<dc:creator>Cowboy</dc:creator>
<guid>http://cowboy3398.wordpress.com/2008/07/16/how-do-i-access-the-linksys-wre54g-range-expander%e2%80%99s-web-based-setup-page/</guid>
<description><![CDATA[http://linksys.custhelp.com/cgi-bin/linksys.cfg/php/enduser/std_adp.php?p_faqid=4103&amp;lid= If you]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>http://linksys.custhelp.com/cgi-bin/linksys.cfg/php/enduser/std_adp.php?p_faqid=4103&#38;lid=</p>
<p>If you’re using a Wireless-G Range Expander &#8211; WRE54G v2 or v3, you can do the following:</p>
<ol>
<li>
<div>Connect the PC to LAN Port of the Range Expander</div>
</li>
<li>
<div>Assign a Static IP Address on your Wired Computer (beyond scope of this post; see link at beginning of post)</div>
</li>
</ol>
<p>Go to <a href="http://192.168.1.240">http://192.168.1.240</a></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[PP Expander - 3 Tenorów]]></title>
<link>http://fation.wordpress.com/2008/06/24/pp-expander-3-tenorow/</link>
<pubDate>Tue, 24 Jun 2008 08:15:47 +0000</pubDate>
<dc:creator>fation</dc:creator>
<guid>http://fation.wordpress.com/2008/06/24/pp-expander-3-tenorow/</guid>
<description><![CDATA[Trzech Tenorów to nowy PP EXPANDER w Afilo.pl Jest to ferta inwestycyjna oparta o stopy zwrotu gener]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Trzech Tenorów to nowy PP EXPANDER w Afilo.pl Jest to ferta inwestycyjna oparta o stopy zwrotu generowane przez najbardziej znanych inwestorów na świecie. Obserwując ostatnie zmiany na rynkach kapitałowych ciężko przewidzieć, jaka klasa aktywów będzie trafną inwestycją. Dzięki LOKACIE TRZECH TENORÓW inwestor zyskuje ekspozycję na wszystkie najważniejsze rynki.</p>
<p>Strona docelowa<br />
<a href="http://www.expander.pl/expander2/index.jsp?place=Menu01&#38;news_cat_id=188&#38;layout=4" target="_blank">http://www.expander.pl/expander2/index.jsp?place=Menu01&#38;news_cat_id=188&#38;layout=4</a></p>
<p><strong>Warunki wynagradzania Wydawcy</strong><br />
Wydawca jest wynagradzany za przekierowanie unikalnego użytkownika.</p>
<p>0,35 zł za kliknięcie CPC</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Expander CPC]]></title>
<link>http://fation.wordpress.com/2008/06/21/expander-cpc/</link>
<pubDate>Sat, 21 Jun 2008 11:24:40 +0000</pubDate>
<dc:creator>fation</dc:creator>
<guid>http://fation.wordpress.com/2008/06/21/expander-cpc/</guid>
<description><![CDATA[Afilo prowadzi program partnerski firmy EXPANDER. Istnieje w nim możliwość zapoznania się z ofertą l]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><img class="alignleft" style="float:left;margin-left:5px;margin-right:5px;" src="http://img167.imageshack.us/img167/7851/exma8.gif" alt="" width="120" height="60" />Afilo prowadzi program partnerski firmy EXPANDER. Istnieje w nim możliwość zapoznania się z ofertą lidera wśród pośredników finansowych z oddziałami w całym kraju. Celem programu jest promocja produktów firmy takich jak:</p>
<ul>
<li>inwestycje (plany systematycznego oszczędzania, lokaty, fundusze),</li>
<li>kredyty mieszkaniowe (nowy kredyt, zamiana na tańszy),</li>
<li>pożyczka hipoteczna.</li>
</ul>
<p>Nowy program w modelu CPC jest skierowny do witryn z kategorii nieruchomości. Poprzedni jak pamiętamy oparty był na module LEAD.</p>
<p><strong>Strona docelowa</strong><br />
<a href="http://www.expander.pl/" target="_blank">www.expander.pl</a></p>
<p><strong>Warunki wynagradzania Wydawcy</strong><br />
Prowizja za przekierowanie unikalnego użytkownika do strony klienta.</p>
<p><strong>PLN 0.35/ unikalny klik</strong></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Installing the Linksys WRE54G Wireless Expander]]></title>
<link>http://fl0g.wordpress.com/2008/05/06/linksys-wre54g-wireless-expander/</link>
<pubDate>Tue, 06 May 2008 18:31:32 +0000</pubDate>
<dc:creator>fl0g</dc:creator>
<guid>http://fl0g.wordpress.com/2008/05/06/linksys-wre54g-wireless-expander/</guid>
<description><![CDATA[I bought a repeater to get that little extra reach enabling Internet access in the garden. Since I a]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p style="text-align:center;"><a href="http://fl0g.files.wordpress.com/2008/05/wre54g-box.gif"><img class="size-full wp-image-54" src="http://fl0g.wordpress.com/files/2008/05/wre54g-box.gif" alt="Linksys WRE54G" width="150" height="150" /></a></p>
<p style="text-align:justify;">I bought a repeater to get that little extra reach enabling Internet access in the garden. Since I already had a Linksys WRT54G router I thought it would be easy if I also bought a repeater of the same brand. However the easy setup steps as noted in the &#8216;quick&#8217; installation booklet &#8216;quickly&#8217; stranded at step 3d with an <strong>&#8217;survey failed&#8217; </strong>error meaning the wireless router couldn&#8217;t find the repeater.  Of course I wouldn&#8217;t be the first nor the last to encounter such problems and a quick search on the internet gave me the following solution:</p>
<p style="padding-left:30px;text-align:justify;"><span class="aom_tr">1) The network was up and running under WPA secure mode when I did this also I had my pc directly connected via an ethernet cable to the router.<br />
</span></p>
<p style="padding-left:30px;text-align:justify;"><span class="aom_tr">2) Plug expander into wall socket, I did not push config button, don&#8217;t pay attention to the lights on the expander.<br />
</span></p>
<p style="padding-left:30px;text-align:justify;"><span class="aom_tr">3) Run an ethernet cable from your router to the expander via the ethernet port below the lights on the expander.  <em>//cable included in the WRE54G box</em><br />
</span></p>
<p style="padding-left:30px;text-align:justify;"><span class="aom_tr">4) Open up 2 browsers on your hardwired computer, one browser at 192.168.1.1 (router) and the second browser at 192.168.1.240 (expander)  <em>//password is &#8216;admin&#8217;, leave userid blank</em></span></p>
<p style="padding-left:30px;text-align:justify;"><span class="aom_tr">5) Set the SSID and subnet mask on the expander, the same as the router. <em> // &#60;&#8212; important the same!!  using the same SSID name will show only 1 wireless network in your wireless connection options however the signal strength of your network will have increased.<br />
</em></span></p>
<p style="padding-left:30px;text-align:justify;"><span class="aom_tr">6) Go to edit security settings on your expander, type in the security key that is in your router, and save settings on the expander. A couple redlight flashes and you should have two blue ones, your ready to move the expander anywhere to get a signal.</span></p>
<p style="padding-left:30px;text-align:justify;">7)<span class="aom_tr">If you get a IP conflict when moving the expander, unplug and plug back in <em>// happened to me, besides unplugging I also had to switch on/off the wireless on my laptop.</em></span></p>
<p style="text-align:justify;">Thanks to the post<a href="http://studentdoctor.net/bookstore/index.php?c=comp&#38;n=541966&#38;i=B00021XIJW&#38;x=Linksys_Wireless_G_Range_Expander_WRE54G"> here.</a></p>
<p style="text-align:justify;">On a side note: I&#8217;ll be only powering the repeater on when I am in the garden since I already have a cellphone tower nearby emitting enough energy (mW/cm^2, power density) of which the long term effects, if existent, are not clear.</p>
<p style="padding-left:30px;text-align:justify;">
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[ Muttertagsherzen - Herzen aus Glas]]></title>
<link>http://glasmagie.wordpress.com/2008/04/29/muttertagsherzen-herzen-aus-glas/</link>
<pubDate>Tue, 29 Apr 2008 21:26:49 +0000</pubDate>
<dc:creator>glasmagie</dc:creator>
<guid>http://glasmagie.wordpress.com/2008/04/29/muttertagsherzen-herzen-aus-glas/</guid>
<description><![CDATA[Du hast ein Muttertagsgeschenk in meinem Shop gefunden und bis zum 30.04.08 bestelllt? Prima, so hab]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><img src="http://www.shopwindoz.com/assets/u/697/sw/p/10917/medium/19.jpg" alt="glasherz, kettenanhänger herz aus glas, muttertag" /></p>
<p>Du hast ein Muttertagsgeschenk in meinem Shop gefunden und bis zum 30.04.08 bestelllt? Prima, so habe ich genügend Zeit alles rechtzeitig anzufertigen und zu versenden.</p>
<p><img src="http://www.shopwindoz.com/assets/u/697/sw/p/10918/medium/23.jpg" alt="glasherz" /></p>
<p>Dafür bedanke ich mich bei den &#8220;Frühbuchern&#8221; mit einem solchen edlen Glasherzanhänger für Kette, Seiden- oder Lederband (ist nicht dabei), die Euren Bestellungen beiliegen werden.</p>
<p><img src="http://www.shopwindoz.com/assets/u/697/sw/p/10919/medium/30.jpg" alt="herzchen" /></p>
<p>Die Farbe der Herzen bleibt eine Überraschung.</p>
<p>Ihr könnt sie selbstverständlich auch einfach bestellen.</p>
<p><img src="http://www.shopwindoz.com/assets/u/697/sw/p/10920/medium/26.jpg" alt="schmuck herz glaskunst" /></p>
<p>Wenn ihr eigene Ideen habt, fragt an, ich kann immer nur Anregungen einstellen aber möglich ist viel viel mehr.</p>
<p><a href="http://www.shopwindoz.com/Glasmagie/products/3337/Muttertagsherzen---Herzen-aus-Glas">Glasmagie Shop</a></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Uefa Euro 2008 Demo Expander]]></title>
<link>http://fanfotbal.org/2008/04/05/uefa-euro-2008-demo-expander/</link>
<pubDate>Sat, 05 Apr 2008 11:27:42 +0000</pubDate>
<dc:creator>Adi</dc:creator>
<guid>http://fanfotbal.org/2008/04/05/uefa-euro-2008-demo-expander/</guid>
<description><![CDATA[Cu ajutorul acestui programel puteti sa jucati nelimitat, sa schimbati detaliile grafice, rezolutia,]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Cu ajutorul acestui programel puteti sa jucati nelimitat, sa schimbati detaliile grafice, rezolutia, dificultatea, etc. Incercati-l sa va convingeti.</p>
<p style="text-align:center;"><a href="http://fanfotbal.files.wordpress.com/2008/04/euro08expander.png"><img class="aligncenter size-medium wp-image-99" src="http://fanfotbal.wordpress.com/files/2008/04/euro08expander.png?w=468" alt="euro 2008 demo expander" width="468" height="388" /></a></p>
<h1><a title="euro 2008 demo expander" href="http://files.filefront.com/euro2008demoexpander+fanflrar/;9953122;/fileinfo.html" target="_blank"><strong><span style="color:#ff0000;">DOWNLOAD UEFA EURO 2008 EXPANDER</span></strong></a></h1>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Summary and detail in listbox]]></title>
<link>http://leeontech.wordpress.com/2008/03/31/styling-listbox/</link>
<pubDate>Mon, 31 Mar 2008 08:34:23 +0000</pubDate>
<dc:creator>lee</dc:creator>
<guid>http://leeontech.wordpress.com/2008/03/31/styling-listbox/</guid>
<description><![CDATA[A couple of posts back we saw how to create a simple yet functional expander control. this sample sh]]></description>
<content:encoded><![CDATA[A couple of posts back we saw how to create a simple yet functional expander control. this sample sh]]></content:encoded>
</item>
<item>
<title><![CDATA[Expander in silverlight]]></title>
<link>http://leeontech.wordpress.com/2008/03/26/expander-in-silverlight/</link>
<pubDate>Wed, 26 Mar 2008 08:28:03 +0000</pubDate>
<dc:creator>lee</dc:creator>
<guid>http://leeontech.wordpress.com/2008/03/26/expander-in-silverlight/</guid>
<description><![CDATA[I was trying to do something like &#8216;Accordion&#8217; in silverlight, but ran into issues with a]]></description>
<content:encoded><![CDATA[I was trying to do something like &#8216;Accordion&#8217; in silverlight, but ran into issues with a]]></content:encoded>
</item>

</channel>
</rss>
