使用 Expression Interactive Designer体验WPF

最近忙里偷闲体验一下.NET 3.0  Framework中的WPF,感触颇深。
记得前一阵看过一个 Thom Robbins的ppt,其中谈到WPF带来的根本性变化,要彻底的改变以往程序员的开发流程。示意如下:
使用 Expression Interactive Designer体验WPF

前两天安装完毕VS2005 wpf extension(November CTP version)后使用wizard创建了一个wpf application发现,在vs2005中设计xaml文件很不爽。打开xaml设计器等待时间很长,而且xaml文件不能手工编辑(可能是个例,能cut/paste,不能键入新字符,不知大家的如何?),另外发现在退出vs2005时常常引起错误。
做程序久了,很少愿意使用UI设计类的工具设计UI,但实在难以忍受vs2005 wpf extension这些或大或小的不便之处了,就下载了一个Expression Interactive Designer来试试看。发现现在这个CTP版本使用起来不错的,至少比在vs里编辑xaml方便多了,而且支持timeline编辑,可以很方便的
实现动画功能,看上去很像flash啊,看来以后这些presentation要殊途同归了。
言归正传,下面是EID编辑出来的xaml文件
使用 Expression Interactive Designer体验WPF使用 Expression Interactive Designer体验WPF
  1使用 Expression Interactive Designer体验WPF<Grid 
  2使用 Expression Interactive Designer体验WPF    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
  3使用 Expression Interactive Designer体验WPF    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
  4使用 Expression Interactive Designer体验WPF    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  5使用 Expression Interactive Designer体验WPF    xmlns:d="http://schemas.microsoft.com/expression/interactivedesigner/2006"
  6使用 Expression Interactive Designer体验WPF    mc:Ignorable="d"
  7使用 Expression Interactive Designer体验WPF    
  8使用 Expression Interactive Designer体验WPF    x:Name="DocumentRoot"
  9使用 Expression Interactive Designer体验WPF    x:Class="CodeSearch.Scene1" 
 10使用 Expression Interactive Designer体验WPF    Width="640" Height="480" xmlns:Microsoft_Windows_Themes="clr-namespace:Microsoft.Windows.Themes;assembly=PresentationFramework.Classic">
 11使用 Expression Interactive Designer体验WPF  <Grid.Background>
 12使用 Expression Interactive Designer体验WPF    <LinearGradientBrush StartPoint="0,0.5" EndPoint="1,0.5">
 13使用 Expression Interactive Designer体验WPF      <LinearGradientBrush.GradientStops>
 14使用 Expression Interactive Designer体验WPF        <GradientStopCollection>
 15使用 Expression Interactive Designer体验WPF          <GradientStop Color="sc#1, 0.05, 0.05, 0.05" Offset="0"/>
 16使用 Expression Interactive Designer体验WPF          <GradientStop Color="sc#1, 0.5, 0.5, 0.5" Offset="0.602852203975801"/>
 17使用 Expression Interactive Designer体验WPF          <GradientStop Color="#FF000000" Offset="1"/>
 18使用 Expression Interactive Designer体验WPF        </GradientStopCollection>
 19使用 Expression Interactive Designer体验WPF      </LinearGradientBrush.GradientStops>
 20使用 Expression Interactive Designer体验WPF      <LinearGradientBrush.RelativeTransform>
 21使用 Expression Interactive Designer体验WPF        <TransformGroup>
 22使用 Expression Interactive Designer体验WPF          <TranslateTransform X="-0.5" Y="-0.5"/>
 23使用 Expression Interactive Designer体验WPF          <ScaleTransform ScaleX="1" ScaleY="1"/>
 24使用 Expression Interactive Designer体验WPF          <SkewTransform AngleX="0" AngleY="0"/>
 25使用 Expression Interactive Designer体验WPF          <RotateTransform Angle="90"/>
 26使用 Expression Interactive Designer体验WPF          <TranslateTransform X="0.5" Y="0.5"/>
 27使用 Expression Interactive Designer体验WPF          <TranslateTransform X="0" Y="0"/>
 28使用 Expression Interactive Designer体验WPF        </TransformGroup>
 29使用 Expression Interactive Designer体验WPF      </LinearGradientBrush.RelativeTransform>
 30使用 Expression Interactive Designer体验WPF    </LinearGradientBrush>
 31使用 Expression Interactive Designer体验WPF  </Grid.Background>
 32使用 Expression Interactive Designer体验WPF  <Grid.Resources>
 33使用 Expression Interactive Designer体验WPF    <Storyboard x:Key="OnLoaded">
 34使用 Expression Interactive Designer体验WPF            <DoubleAnimationUsingKeyFrames BeginTime="00:00:00" Duration="00:00:00.0010000" Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="FeedView">
 35使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="1" KeyTime="00:00:00"/>
 36使用 Expression Interactive Designer体验WPF            </DoubleAnimationUsingKeyFrames>
 37使用 Expression Interactive Designer体验WPF            <ObjectAnimationUsingKeyFrames BeginTime="00:00:00" Duration="00:00:00.0010000" Storyboard.TargetProperty="(UIElement.Visibility)" Storyboard.TargetName="FeedView">
 38使用 Expression Interactive Designer体验WPF                <DiscreteObjectKeyFrame d:KeyEase="Linear;Hold;0.5;0.5;0;0" Value="{x:Static Visibility.Visible}" KeyTime="00:00:00"/>
 39使用 Expression Interactive Designer体验WPF            </ObjectAnimationUsingKeyFrames>
 40使用 Expression Interactive Designer体验WPF            <DoubleAnimationUsingKeyFrames BeginTime="00:00:00" Duration="00:00:00.0010000" Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[1].(ScaleTransform.ScaleX)" Storyboard.TargetName="FeedView">
 41使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="0.003539823008849492" KeyTime="00:00:00"/>
 42使用 Expression Interactive Designer体验WPF            </DoubleAnimationUsingKeyFrames>
 43使用 Expression Interactive Designer体验WPF            <DoubleAnimationUsingKeyFrames BeginTime="00:00:00" Duration="00:00:00.0010000" Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[1].(ScaleTransform.ScaleY)" Storyboard.TargetName="FeedView">
 44使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="0.0030395136778115484" KeyTime="00:00:00"/>
 45使用 Expression Interactive Designer体验WPF            </DoubleAnimationUsingKeyFrames>
 46使用 Expression Interactive Designer体验WPF            <DoubleAnimationUsingKeyFrames BeginTime="00:00:00" Duration="00:00:00.0010000" Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[5].(TranslateTransform.X)" Storyboard.TargetName="FeedView">
 47使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="-281.5" KeyTime="00:00:00"/>
 48使用 Expression Interactive Designer体验WPF            </DoubleAnimationUsingKeyFrames>
 49使用 Expression Interactive Designer体验WPF            <DoubleAnimationUsingKeyFrames BeginTime="00:00:00" Duration="00:00:00.0010000" Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[5].(TranslateTransform.Y)" Storyboard.TargetName="FeedView">
 50使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="-164" KeyTime="00:00:00"/>
 51使用 Expression Interactive Designer体验WPF            </DoubleAnimationUsingKeyFrames>
 52使用 Expression Interactive Designer体验WPF        </Storyboard>
 53使用 Expression Interactive Designer体验WPF        <Storyboard x:Key="SearchCompleted" d:StoryboardName="SearchCompleted">
 54使用 Expression Interactive Designer体验WPF            <DoubleAnimationUsingKeyFrames BeginTime="00:00:00" Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[1].(ScaleTransform.ScaleX)" Storyboard.TargetName="FeedView">
 55使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="0.01415929203539823" KeyTime="00:00:00"/>
 56使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="0.037168141592920353" KeyTime="00:00:00.2500000"/>
 57使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="0.0902654867256637" KeyTime="00:00:00.5420000"/>
 58使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="0.17168141592920352" KeyTime="00:00:00.7500000"/>
 59使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="0.35575221238938054" KeyTime="00:00:01.0420000"/>
 60使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="0.41061946902654861" KeyTime="00:00:01.2920000"/>
 61使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="0.51858407079646007" KeyTime="00:00:01.5000000"/>
 62使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="0.61769911504424768" KeyTime="00:00:01.7500000"/>
 63使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="0.74867256637168111" KeyTime="00:00:01.9580000"/>
 64使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="0.88495575221238865" KeyTime="00:00:02.2920000"/>
 65使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="0.97876106194690116" KeyTime="00:00:03"/>
 66使用 Expression Interactive Designer体验WPF            </DoubleAnimationUsingKeyFrames>
 67使用 Expression Interactive Designer体验WPF            <DoubleAnimationUsingKeyFrames BeginTime="00:00:00" Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[5].(TranslateTransform.X)" Storyboard.TargetName="FeedView">
 68使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="-278.5" KeyTime="00:00:00"/>
 69使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="-272" KeyTime="00:00:00.2500000"/>
 70使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="-257" KeyTime="00:00:00.5420000"/>
 71使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="-234" KeyTime="00:00:00.7500000"/>
 72使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="-182" KeyTime="00:00:01.0420000"/>
 73使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="-166.5" KeyTime="00:00:01.2920000"/>
 74使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="-136" KeyTime="00:00:01.5000000"/>
 75使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="-108.00000000000001" KeyTime="00:00:01.7500000"/>
 76使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="-71.000000000000057" KeyTime="00:00:01.9580000"/>
 77使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="-32.500000000000185" KeyTime="00:00:02.2920000"/>
 78使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="-6.000000000000405" KeyTime="00:00:03"/>
 79使用 Expression Interactive Designer体验WPF            </DoubleAnimationUsingKeyFrames>
 80使用 Expression Interactive Designer体验WPF            <DoubleAnimationUsingKeyFrames BeginTime="00:00:00" Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[1].(ScaleTransform.ScaleY)" Storyboard.TargetName="FeedView">
 81使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="0.0364741641337386" KeyTime="00:00:00"/>
 82使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="0.079027355623100315" KeyTime="00:00:00.2500000"/>
 83使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="0.18237082066869309" KeyTime="00:00:00.5420000"/>
 84使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="0.34346504559270541" KeyTime="00:00:00.7500000"/>
 85使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="0.55319148936170282" KeyTime="00:00:01.0420000"/>
 86使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="0.61702127659574613" KeyTime="00:00:01.2920000"/>
 87使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="0.747720364741644" KeyTime="00:00:01.5000000"/>
 88使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="0.87537993920973167" KeyTime="00:00:01.7500000"/>
 89使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="0.96352583586627183" KeyTime="00:00:01.9580000"/>
 90使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="0.99696048632220935" KeyTime="00:00:02.2920000"/>
 91使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="1.0759878419453304" KeyTime="00:00:03"/>
 92使用 Expression Interactive Designer体验WPF            </DoubleAnimationUsingKeyFrames>
 93使用 Expression Interactive Designer体验WPF            <DoubleAnimationUsingKeyFrames BeginTime="00:00:00" Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[5].(TranslateTransform.Y)" Storyboard.TargetName="FeedView">
 94使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="-158.5" KeyTime="00:00:00"/>
 95使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="-151.5" KeyTime="00:00:00.2500000"/>
 96使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="-134.5" KeyTime="00:00:00.5420000"/>
 97使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="-107.99999999999997" KeyTime="00:00:00.7500000"/>
 98使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="-73.499999999999915" KeyTime="00:00:01.0420000"/>
 99使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="-62.9999999999998" KeyTime="00:00:01.2920000"/>
100使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="-41.499999999999588" KeyTime="00:00:01.5000000"/>
101使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="-20.499999999999165" KeyTime="00:00:01.7500000"/>
102使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="-5.9999999999983142" KeyTime="00:00:01.9580000"/>
103使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="-0.49999999999659916" KeyTime="00:00:02.2920000"/>
104使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="12.500000000006818" KeyTime="00:00:03"/>
105使用 Expression Interactive Designer体验WPF            </DoubleAnimationUsingKeyFrames>
106使用 Expression Interactive Designer体验WPF            <DoubleAnimationUsingKeyFrames BeginTime="00:00:00" Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="FeedView">
107使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="0.95377503852080248" KeyTime="00:00:00"/>
108使用 Expression Interactive Designer体验WPF                <SplineDoubleKeyFrame d:KeyEase="Linear;Linear;0.5;0.5;0.5;0.5" KeySpline="0.5,0.5,0.5,0.5" Value="1" KeyTime="00:00:00.2500000"/>
109使用 Expression Interactive Designer体验WPF            </DoubleAnimationUsingKeyFrames>
110使用 Expression Interactive Designer体验WPF        </Storyboard>
111使用 Expression Interactive Designer体验WPF        <Style x:Key="TreeViewStyle1" TargetType="{x:Type TreeView}">
112使用 Expression Interactive Designer体验WPF            <Setter Property="Background" Value="{DynamicResource {x:Static SystemColors.WindowBrushKey}}"/>
113使用 Expression Interactive Designer体验WPF            <Setter Property="BorderBrush">
114使用 Expression Interactive Designer体验WPF                <Setter.Value>
115使用 Expression Interactive Designer体验WPF                    <SolidColorBrush/>
116使用 Expression Interactive Designer体验WPF                </Setter.Value>
117使用 Expression Interactive Designer体验WPF            </Setter>
118使用 Expression Interactive Designer体验WPF            <Setter Property="BorderThickness" Value="2,2,2,2"/>
119使用 Expression Interactive Designer体验WPF            <Setter Property="Padding" Value="1,1,1,1"/>
120使用 Expression Interactive Designer体验WPF            <Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.ControlTextBrushKey}}"/>
121使用 Expression Interactive Designer体验WPF            <Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Auto"/>
122使用 Expression Interactive Designer体验WPF            <Setter Property="ScrollViewer.VerticalScrollBarVisibility" Value="Auto"/>
123使用 Expression Interactive Designer体验WPF            <Setter Property="VerticalContentAlignment" Value="Center"/>
124使用 Expression Interactive Designer体验WPF            <Setter Property="Template">
125使用 Expression Interactive Designer体验WPF                <Setter.Value>
126使用 Expression Interactive Designer体验WPF                    <ControlTemplate TargetType="{x:Type TreeView}">
127使用 Expression Interactive Designer体验WPF                        <Microsoft_Windows_Themes:ClassicBorderDecorator Background="{TemplateBinding Background}" x:Name="ClassicBorderDecorator" BorderStyle="Sunken" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}">
128使用 Expression Interactive Designer体验WPF                            <ScrollViewer Focusable="False" Background="{TemplateBinding Background}" x:Name="ScrollViewer" Padding="{TemplateBinding Padding}" HorizontalScrollBarVisibility="{TemplateBinding ScrollViewer.HorizontalScrollBarVisibility}" VerticalScrollBarVisibility="{TemplateBinding ScrollViewer.VerticalScrollBarVisibility}" CanContentScroll="False">
129使用 Expression Interactive Designer体验WPF                                <ItemsPresenter x:Name="ItemsPresenter"/>
130使用 Expression Interactive Designer体验WPF                            </ScrollViewer>
131使用 Expression Interactive Designer体验WPF                        </Microsoft_Windows_Themes:ClassicBorderDecorator>
132使用 Expression Interactive Designer体验WPF                    </ControlTemplate>
133使用 Expression Interactive Designer体验WPF                </Setter.Value>
134使用 Expression Interactive Designer体验WPF            </Setter>
135使用 Expression Interactive Designer体验WPF        </Style>
136使用 Expression Interactive Designer体验WPF  </Grid.Resources>
137使用 Expression Interactive Designer体验WPF    <Grid.Triggers>
138使用 Expression Interactive Designer体验WPF        <EventTrigger RoutedEvent="FrameworkElement.Loaded">
139使用 Expression Interactive Designer体验WPF            <BeginStoryboard x:Name="OnLoaded_BeginStoryboard" Storyboard="{DynamicResource OnLoaded}"/>
140使用 Expression Interactive Designer体验WPF        </EventTrigger>
141使用 Expression Interactive Designer体验WPF        <EventTrigger RoutedEvent="Button.Click" SourceName="Button">
142使用 Expression Interactive Designer体验WPF            <EventTrigger.Actions>
143使用 Expression Interactive Designer体验WPF                <BeginStoryboard Storyboard="{DynamicResource SearchCompleted}" x:Name="SearchCompleted_BeginStoryboard"/>
144使用 Expression Interactive Designer体验WPF            </EventTrigger.Actions>
145使用 Expression Interactive Designer体验WPF        </EventTrigger>        
146使用 Expression Interactive Designer体验WPF    </Grid.Triggers>
147使用 Expression Interactive Designer体验WPF    
148使用 Expression Interactive Designer体验WPF    <Grid.ColumnDefinitions>
149使用 Expression Interactive Designer体验WPF        <ColumnDefinition/>
150使用 Expression Interactive Designer体验WPF    </Grid.ColumnDefinitions>
151使用 Expression Interactive Designer体验WPF    <Grid.RowDefinitions>
152使用 Expression Interactive Designer体验WPF        <RowDefinition Height="0.3625*" />
153使用 Expression Interactive Designer体验WPF    <RowDefinition Height="0.6375*" />
154使用 Expression Interactive Designer体验WPF  </Grid.RowDefinitions>
155使用 Expression Interactive Designer体验WPF    <Button Click="OnClick" HorizontalAlignment="Right" Margin="0,68,138,86" Width="99" x:Name="Button" Content="Search Code" Foreground="sc#1, 0.0320657268, 0.0320657268, 0.0320657268">
156使用 Expression Interactive Designer体验WPF
157使用 Expression Interactive Designer体验WPF    </Button>    
158使用 Expression Interactive Designer体验WPF    <TextBox VerticalAlignment="Top" Margin="48,28,266,0" Height="21" x:Name="TextBox" Text="http://www.google.com/codesearch/feeds/search" TextWrapping="Wrap"/>
159使用 Expression Interactive Designer体验WPF    <TextBox Margin="47,68,267,85" x:Name="TextBox1" RenderTransformOrigin="0.5,0.5" Text="" TextWrapping="Wrap">
160使用 Expression Interactive Designer体验WPF        <TextBox.RenderTransform>
161使用 Expression Interactive Designer体验WPF            <TransformGroup>
162使用 Expression Interactive Designer体验WPF                <TranslateTransform X="0" Y="0"/>
163使用 Expression Interactive Designer体验WPF                <ScaleTransform ScaleX="1" ScaleY="1"/>
164使用 Expression Interactive Designer体验WPF                <SkewTransform AngleX="0" AngleY="0"/>
165使用 Expression Interactive Designer体验WPF                <RotateTransform Angle="-0.20186333216423114"/>
166使用 Expression Interactive Designer体验WPF                <TranslateTransform X="0" Y="0"/>
167使用 Expression Interactive Designer体验WPF                <TranslateTransform X="0" Y="0"/>
168使用 Expression Interactive Designer体验WPF            </TransformGroup>
169使用 Expression Interactive Designer体验WPF        </TextBox.RenderTransform>
170使用 Expression Interactive Designer体验WPF    </TextBox>
171使用 Expression Interactive Designer体验WPF    <TreeView Margin="46,115,29,36" x:Name="FeedView" Grid.RowSpan="2" RenderTransformOrigin="0.5,0.5" Style="{DynamicResource TreeViewStyle1}" >
172使用 Expression Interactive Designer体验WPF        <TreeView.RenderTransform>
173使用 Expression Interactive Designer体验WPF            <TransformGroup>
174使用 Expression Interactive Designer体验WPF                <TranslateTransform X="0" Y="0"/>
175使用 Expression Interactive Designer体验WPF                <ScaleTransform ScaleX="1" ScaleY="1"/>
176使用 Expression Interactive Designer体验WPF                <SkewTransform AngleX="0" AngleY="0"/>
177使用 Expression Interactive Designer体验WPF                <RotateTransform Angle="0"/>
178使用 Expression Interactive Designer体验WPF                <TranslateTransform X="0" Y="0"/>
179使用 Expression Interactive Designer体验WPF                <TranslateTransform X="0" Y="0"/>
180使用 Expression Interactive Designer体验WPF            </TransformGroup>
181使用 Expression Interactive Designer体验WPF        </TreeView.RenderTransform>
182使用 Expression Interactive Designer体验WPF    </TreeView>
183使用 Expression Interactive Designer体验WPF</Grid>

这些xaml文件代码要是手写得累够呛吧,幸好有Expression Interactive Designer。
这个简单的UI的主要功能就是从Google Code Search上搜索代码用的,这些业务性代码最好还是用vs2005来吧,在button click里编写完毕就可以了。具体代码比较简单就不一一累述了。

总结一下,未来程序的开发过程分离的要更合理了,美工人员设计UI,程序员可以更专注的编写核心逻辑代码,不用一天到晚的操心控件摆放,动画效果什么的了,呵呵。

例子代码:CodeSearch.rar

转载于:https://www.cnblogs.com/snowy/archive/2006/11/11/557417.html