アットウィキロゴ

開発部 > 技術 > Visual Studio 2008 > WPF > ガジェットっぽいコントロール

ガジェットっぽいコントロールを作ってみた。
サンプルなので、コントロール名、見た目はまったく考慮してません。。。(´д`)ヾ
このコントロールは、Canvasに配置しドラッグによる表示位置の変更,およびサイズの変更ができる
ようにしています。(Canvasが置されているページで、このコントロールが通知するイベント
をハンドリングし配表示位置の変更を行います。)

まずは、画面部分。

UserControl1.xaml
  1. <UserControl x:Class="UserControl1"
  2. xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  3. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  4. Height="321" Width="336" >
  5. <Grid>
  6. <DockPanel Margin="0" Name="DockPanel1">
  7. <Thumb Height="23" Name="Thumb1" DockPanel.Dock="Top"
  8. DragDelta="Thumb_DragDelta"
  9. DragStarted="Thumb_DragStarted"
  10. DragCompleted="Thumb_DragCompleted" >
  11. <Thumb.Template>
  12. <ControlTemplate>
  13. <Border Height="23"
  14. CornerRadius="10,10,0,0" Padding="0"
  15. Background="Turquoise"
  16. BorderBrush="AliceBlue" BorderThickness="1">
  17. </Border>
  18. </ControlTemplate>
  19. </Thumb.Template>
  20. </Thumb>
  21. <Border Name="Border2" Height="17" DockPanel.Dock="Bottom"
  22. CornerRadius="0" Padding="0"
  23. BorderBrush="AliceBlue" BorderThickness="1">
  24. <DockPanel Name="DockPanel2" Height="15" DockPanel.Dock="Bottom"
  25. Margin="0">
  26. <Thumb Name="Thumb2"
  27. Height="15" Width="15" DockPanel.Dock="Right"
  28. Background="Beige"
  29. DragStarted="Thumb2_DragStarted"
  30. DragDelta="Thumb2_DragDelta"
  31. DragCompleted="Thumb2_DragCompleted">
  32. <Thumb.Template>
  33. <ControlTemplate>
  34. <ResizeGrip Height="15" Width="15"
  35. Background="Beige"/>
  36. </ControlTemplate>
  37. </Thumb.Template>
  38. </Thumb>
  39. <StatusBar Name="StatusBar1" Height="16"
  40. DockPanel.Dock="Left"
  41. Background="Beige"/>
  42. </DockPanel>
  43. </Border>
  44. <Frame Name="Frame1" DockPanel.Dock="Top"
  45. Background="WhiteSmoke"
  46. BorderBrush="AliceBlue" BorderThickness="1"
  47. OpacityMask="WhiteSmoke"/>
  48. </DockPanel>
  49. </Grid>
  50. </UserControl>
  51.  

最終更新:2009年04月21日 16:40
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。