2010年5月4日 星期二

Silverlight 4 Toolkit中的滑鼠右鍵選單(ContextMenu)支援

有了滑鼠右鍵支援之後,第一個令人聯想到的,就是右鍵選單的設計了。配合著滑鼠右鍵的支援,在Silverlight 4 Toolkit當中,收錄了右鍵選單的控制項,當您安裝了Silverlight 4 Toolkit之後,可以從工具箱中找到這個ContextMenu控件:
您可以把ContextMenu附著在任何的UIElement上,呈現出的結果如上圖。除了ContextMenu之外,SL 4 Toolkit還附贈了一個ContextMenuService機制,這讓我們在設計XAML時可以這樣撰寫:
<TextBox Height="26" HorizontalAlignment="Left" Margin="44,28,0,0" Name="textBox1" VerticalAlignment="Top" Width="286" Text="請在我身上按滑鼠右鍵" FontSize="16" >
<toolkit:ContextMenuService.ContextMenu>
<toolkit:ContextMenu FontSize="12" HorizontalAlignment="Left" Name="contextMenu1" VerticalAlignment="Top">
<toolkit:MenuItem
Header="選單一"
Click="MenuItem_Click"/>
<toolkit:Separator/>
<toolkit:MenuItem
Header="可以設為disabled"
IsEnabled="False"/>
<toolkit:Separator/>
<toolkit:MenuItem
Header="小圖示"
Click="MenuItem_Click">
<toolkit:MenuItem.Icon>
<Image Source="Images/User.png"/>
</toolkit:MenuItem.Icon>
</toolkit:MenuItem>
</toolkit:ContextMenu>
</toolkit:ContextMenuService.ContextMenu>
</TextBox>
透過ContextMenuService可以幫助我們不需要額外撰寫任何的程式碼,例如我們只需要在TextBox中加上ContextMenuService並在其中加入了ContextMenu,如此一來當使用者在TextBox上按下滑鼠右鍵時,就會自動出現右鍵選單了。
[參考範例下載]

沒有留言: