I.M.Possible What is impossible with men is possible with God

27Feb/100

Bill Gates’ Vision on Zero CO2 Emission by 2050

This is an interesting talk by Bill Gates about his vision to reduce the amount of CO_2 emissions in order to stop the Earth rising temperature.

CO_2 = People \times \frac{Services}{Person} \times \frac{Energy}{Service} \times \frac{CO_2}{Energy}

23Feb/100

How to download MMS streaming video

MMS (Microsoft Media Server) is Microsoft's streaming protocol used to transfer data in Windows Media Services. Since this streaming data is meant to be played in client-side streaming application, it is not an obvious thing to do if we intend to download/save the streaming video to our local drive.

19Jan/102

SharePoint Web Part Custom Properties

In my current project, I am creating a SharePoint web part that simply renders a custom .NET User Control from a certain location. I want the user to be able to configure the User Control's properties through the Web Part properties. Therefore I followed the MSDN instruction on how to create a web part with custom properties. However, somehow the custom properties just doesn't show up.

So, after scratching my head for a couple of hours (not literally), I found something that, I think, was not accurately specified:

  1. Personalizable attribute needs to be specified
  2. Use WebBrowsable instead of Browsable attribute

This is the code-snippet that works for me:

[Category("Custom Properties")]
[DefaultValue(true)]
[Personalizable(PersonalizationScope.Shared)]
[WebPartStorage(Storage.Shared)]
[FriendlyNameAttribute("Include lists")]
[WebBrowsable(true)]
[XmlElement(ElementName = "IncludeLists")]
public bool IncludeLists { get; set; }