My friends, my life, my style - James S.F. Hsieh

4/28/2009

苗栗之旅的旅行計畫


檢視較大的地圖

4/27/2009

[國寶] 編織蓑衣斗笠的阿公

昨天, 我跟 Stella 兩個本來要去光華商場買 DVD 的空片還有吃好吃的餛頓, 結果卻跑去逛光華商場一旁的希望廣場, 希望廣場常常展示販賣很多農會的農產品, 而這次的主題是苗栗縣農會, 我跟 S 大就到每一攤吃吃喝喝了, 買了一堆好吃的農產品, 戰利品包含了: 一大把番薯葉, 兩大包桃子, 一大包筍子, 四包香菇, 一捆梅干, 還有最有趣的就是一頂蓑衣的斗笠, 這頂斗笠編織的超細緻, 他是用乾稻草編成的, 而編織這頂斗笠的就是這位超可愛的阿公, 根據旁邊的人說, 他們村子也只剩下這個阿公會編織這種斗笠了, 我跟 S 大就跟他買了一頂小號的, 感覺真是超開心~~ 很謝謝他願意讓我拍照, 他真是個慈祥的阿公

4/20/2009

Routed event of WPF


Dependency Property of WPF

Dependency Property 是個有趣的設計, 他提供一種低耦合性的屬性依附機制, 允許任何人定義特定的屬性 (AnyClass) 並且將其屬性注入繼承至 DependencyObject 的任何類別 (ChildClass). 重點在於: ChildClass 不需要對該屬性有任何的概念與反應, 只有了解所定義屬性的 AnyClass 才需要(才能夠) 處理該屬性並且給予是當的反應.

這種概念跟 Web 2.0 貼標籤 tag 有著相同的想法. 被貼標籤的文章或照片不能夠了解標籤的意義, 因為這個標籤只對貼標籤的人才有意義.

相同的 Class 的兩個物件可以有著不同的相依屬性 (tag), 所以, 對了解該屬性的其他物件與這兩個物件互動時, 可以有著完全不同的反應, 而這種多型性是定義在外在的相依屬性, 原本的 Class 只要繼承至 DependencyObject 就有能力被 attach 任何的 Dependency Property, 而且, 當屬性改變時, 還可以觸發相對應的通告來產生對應的自訂行為.


以下程式碼, ChildClass 跟 AnyClass 為相同的 Class 做為例子
public class ChildClass : DependencyObject
{
public ChildClass () :
base() { }
public Boolean State
{
get { return
(Boolean)this.GetValue(StateProperty); }
set { this.SetValue(StateProperty, value); }
}
public
static readonly DependencyProperty
StateProperty =
DependencyProperty.Register("State", typeof(Boolean),
typeof(ChildClass),new
PropertyMetadata(false));
}
WPF 利用這個機制來處理 XAML 中所有的屬性, 這些可以達成 XAML 與 Visual Tree 物件間的屬性巢狀繼承, 屬性改變通告, 等多種應用, 對於 WPF 的設計理念 Code + Markup 極為重要.

4/19/2009

2009 04 19 七星山主峰

寄件者 Stella 寫真
寄件者 特寫
寄件者 死黨
檢視較大的地圖

4/17/2009

Style of WPF

Style of WPF


Styling and Templating

4/15/2009

Survey of WPF Architecture

Class diagram of Visual Tree and Logical Tree of WPF

4/13/2009

Evolution of Dance

看了會全身想跟著舞動的感覺, 這也許就是跳舞的魅力.

4/11/2009

2009 04 11 哈盆古道

哈盆古道是個位於烏來深山的古道, 主要用於部落間的來往, 交易, 還有聯婚.  從登山口到哈盆營地大約需要 10 公里的路程, 由於我們 11 點才到登山口, 再加上我是隻軟腳馬(不是勇腳馬喔)的關係, 這次我們只有行走大約一半的距離. 哈盆古道十分適合露營, 因為沿路都沿著溪流, 所以水源上不是問題, 在登山口處就看到不少車輛停在外面 (還看到一台悍馬 HMMWV),  可想而知大多數的人都進去露營了. 這次可以說是場勘, 下次就要去裡面露營了喔 ^^ 值得一提, 那邊有不少壯觀的鳥巢蕨在大樹上喔.
寄件者 生物
寄件者 自然
寄件者 死黨
寄件者 攝影
寄件者 自然
寄件者 特寫
檢視較大的地圖

4/08/2009

舊聞新知 Overview of C# 2.0 3.0 4.0

C# 真的進步太快了, 太多東西我已經不知道了 >< 慚愧...


Features of C# 2.0

  1. Generics
  2. Iterators
  3. Partial Classes
  4. Nullable Types
  5. Null-Coalesce operator
  6. Anonymous Methods
  7. Namespace alias qualifier
  8. Static Classes
  9. External Assembly Alias
  10. Property Accessor Accessibility
  11. Covariance and Contravariance in Delegates

Features of C# 3.0 (2007)

  1. LINQ
  2. Implicitly Typed Local Variables
  3. Extension Methods
  4. Lambda Expressions
  5. Object Initializers
  6. Anonymous Types
  7. Query Expressions
  8. Expression Trees
  9. Automatically Implemented Properties

Features of C# 4.0 (2008)

  1. Dynamic member lookup
  2. Covariant and contravariant generic type parameters
  3. COM related features

C Sharp (programming language), What's New in the C# 2.0 Language and Compiler, Overview of C# 3.0

4/07/2009

Action Figures

4/06/2009

Windows 7 Taskbar

  1. Jump Lists (destinations and tasks) Recent category SHAddToRecentDocs Custom category CLSID_DestinationList, ICustomDestinationList CLSID_EnumerableObjectCollection, IObjectCollection, IObjectArray SHCreateItemInKnownFolder, SHCreateItemFromParsingName, IShellItem User Tasks CLSID_DestinationList, ICustomDestinationList CLSID_EnumerableObjectCollection, IObjectCollection, IObjectArray CLSID_ShellLink, IShellLink
  2. Overlay Icons and Progress bar ITaskbarList3, SetOverlayIcon, SetProgressState and SetProgressValue
  3. Thumbnail Toolbars ITaskbarList3, SetThumbnailClip, ThumbBarAddButtons ...
  4. Interactive, Grouped Thumbnail
  5. Custom Window Switchers
  6. Application ID SetCurrentProcessExplicitAppUserModelID
  7. Aero Peek
  8. Color Hot-track
  9. Notification Area

投影片: Jump lists of Windows 7 Taskbar

The Windows 7 Taskbar, Windows 7 taskbar: Developer Resources, Windows 7 Taskbar – Part 1, The Basics, Windows 7 of Blog "All Your Base Are Belong To Us"