silverlight开发需要那些工具

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了silverlight开发需要那些工具相关的知识,希望对你有一定的参考价值。

开发silverlight需要安装那些工具,是不是只要有vs2008和blend就可以了,这2个东西用什么版本的,那里有下

  工具一: Visual Studio 2008 SP1 或者 Visual Studio 2010 或者 Visual Web Developer Express 2008 With SP1;
  工具二: Silverlight开发工具包
  工具三: Silverlight SDK
  工具四: Expression Blend 3 + SketchFlow - Silverlight设计工具
  工具五: Silverlight Toolkit - Silverlight控件开发包
  工具六: Silverlight客户端
  以上Silverlight开发工具安装完成后,需要确认安装Silverlight客户端,当前微软推出了两款Silverlight客户端,分别运行在Windows系统和Mac系统。
参考技术A http://www.cnblogs.com/861580030/archive/2010/05/24/1743017.html 1.首先安装Visual Studio 2008 SP1 补丁(大小:898M)
下载地址: http://download.microsoft.com/download/1/9/d/19d22169-a4b2-455f-8c28-ed137bd91487/VS2008SP1CHSX1512981.iso 2.然后安装Silverlight_Tools(大小:31.1M) http://download.microsoft.com/download/4/B/F/4BF987B7-3E6D-41AF-BD95-6FC4486AC5FE/Silverlight3_Tools.exe
3.先卸载上一步的Silverlight 3 SDK 4.安装Microsoft Expression Blend 3 + SketchFlow Trial(大小:71.2M)
下载地址: http://download.microsoft.com/download/2/B/2/2B2AE3E4-BE5C-4D48-9E42-D94CB0940C83/Blend_Trial_en.exe 5.下载Blend3的破解补丁,覆盖Blend3安装文件根目录下的dll文件(大小:141KB)下载地址: http://files.cnblogs.com/yangfan/SLDL_DLL.rar 6.安装修补提示被换成英文的补丁(大小:6.19M)
下载地址: http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=KB957507&DownloadId=5273
参考技术B 1、Visual Studio 2010 英文版 + Silverlight4_Tools 英文版2、Visual Studio 2010 中文版 + Silverlight4_Tools 英文版如果使用中文版 2010 ,现Silverlight4_tools 还没有中文版,在安装英文版的Tools时会报错, 修改注册表 \HKEY_LOCAL_MACHINE\SOTWARE\Microsoft\VisualStudio\10.0\Setup\VS\BuildNumber
在这个注册表项里新建一个字符串值,名称(1033),值(10.0.30319)。再安装Silverlight4_tools英文版即可。
参考技术C 建议你最好使用VS2010,对silverlight有了革命性的升级,而且其他的组件也全包含了 参考技术D 什么都不用 下个2010 什么都能干了

Silverlight 4:如何在键盘焦点上显示工具提示(修订)

【中文标题】Silverlight 4:如何在键盘焦点上显示工具提示(修订)【英文标题】:Silverlight 4: how to show ToolTip on keyboard focus (revised) 【发布时间】:2011-09-27 18:03:57 【问题描述】:

我原来的问题:

是否有一种简单的方法可以在项目获得键盘焦点时显示工具提示,而不仅仅是鼠标悬停?我们有一个带有工具提示的项目列表,用户可能会通过标签浏览这些项目,并且期望的行为是随后也显示工具提示。

添加了示例 XAML。带有 Tooltip 集的 HyperlinkBut​​ton 也需要键盘焦点。

    <DataTemplate x:Key="OfferingItemDT">
        <HyperlinkButton Command="Binding Path=NavigateToLinkCommand" ToolTipService.ToolTip="Binding Tooltip">                
             <Grid x:Name="gOfferingButtonRoot" Width="275" MaxHeight="78" Margin="5,3">
                <Grid.ColumnDefinitions>
                    <ColumnDefinition Width="40"/>
                    <ColumnDefinition Width="*"/>
                </Grid.ColumnDefinitions>
                <Grid.RowDefinitions>
                    <RowDefinition Height="Auto"/>
                    <RowDefinition Height="*"/>
                </Grid.RowDefinitions>

                <Image x:Name="imgServiceOfferingIcon" 
                Grid.RowSpan="2"            
                VerticalAlignment="Top" 
                Source="Binding Path=Image, Converter=StaticResource ByteArrayToImageConverter" 
                Stretch="UniformToFill" 
                Margin="2,10,0,0"
                MaxHeight="32" MaxWidth="32"
                />
                <TextBlock x:Name="txbOfferingTitle"
                    Grid.Column="1"
                    Grid.Row="0"
                    Text="Binding Title"                               
                    TextWrapping="Wrap"                                        
                    Style="StaticResource OfferingTileTitleText"/>
                <TextBlock x:Name="txbOfferingDesc"
                Grid.Column="1"
                Grid.Row="1"
                Style="StaticResource OfferingTileBodyText"
                Text="Binding BriefDescription" />

             </Grid>
        </HyperlinkButton>
    </DataTemplate>             

更新: 根据WPF: Show and persist ToolTip for a Textbox based on the cursor 中的信息以及 Anthony 的 cmets,我在 GotFocus 事件处理程序中尝试了这段代码:

        private void showTooltip(object sender, RoutedEventArgs e)
    
        HyperlinkButton hb = new HyperlinkButton();
        ToolTip ttip = new ToolTip();


        hb = sender as HyperlinkButton;


        ttip = ToolTipService.GetToolTip(hb) as ToolTip;
        ttip.IsOpen = true;            

    

这似乎可行,但 ttip 始终为空。帮忙?

【问题讨论】:

【参考方案1】:

“简单”是主观术语。是的,这很容易。在您附加ToolTip 的同一UI 元素上,您可以挂钩GotFocusLostFocus 事件处理程序,将使用ToolTipService.GetToolTip 获取工具提示并将IsOpen 设置为truefalse分别。

【讨论】:

谢谢。我只是 xaml 的人,所以可以使用更多的帮助。 @dex3703:这太可惜了,因为 *** 是开发人员的地方。作为一个“Xaml 专家”,如果您在问题中包含一些 Xaml 会有所帮助,我可以将其用作更详细答案的基础。 我在一个大型团队中,并试图在代码完成之前帮助不堪重负的开发人员。我已经离开几个月了,这无济于事。 :) Anthony -- 刚刚理解了您的建议并在上面发布了代码。它总是空的——我做错了什么?谢谢!【参考方案2】:

缺少的部分是在 XAML 中定义工具提示,以便我们可以访问 Tooltip 元素。

<HyperlinkButton MouseLeftButtonUp="showTooltip">
  <ToolTipService.ToolTip>
    <ToolTip>
      <TextBlock Text="My tooltip text"/>
    </ToolTip>
  </ToolTipService.ToolTip>
  <!-- ... -->
</HyperlinkButton>

后面的代码

private void showTooltip(object sender, RoutedEventArgs e)

  FrameworkElement frameworkElement = (FrameworkElement)sender;
  ToolTip tooltip = ToolTipService.GetToolTip(frameworkElement) as ToolTip;
  if (tooltip != null)
  
    tooltip.IsOpen = true;
    frameworkElement.MouseLeave += new MouseEventHandler(frameworkElement_MouseLeave);
  


static void frameworkElement_MouseLeave(object sender, MouseEventArgs e)

  FrameworkElement frameworkElement = (FrameworkElement)sender;
  frameworkElement.MouseLeave -= new MouseEventHandler(frameworkElement_MouseLeave);

  ToolTip tooltip = ToolTipService.GetToolTip(frameworkElement) as ToolTip;
  if (tooltip != null)
  
    tooltip.IsOpen = false;
  

【讨论】:

谢谢!我现在无法检查,该项目早已不复存在,但我相信它会在未来出现。

以上是关于silverlight开发需要那些工具的主要内容,如果未能解决你的问题,请参考以下文章

Silverlight,鼠标单击路径中的间隙

在 Asp.Net 解决方案中集成 silverlight 控件的最佳实践

以编程方式为 Silverlight 显示选择图像转换格式为 JPEG 或 PNG

Silverlight 图像编辑器控件 [关闭]

Silverlight开发:我应该键入XAML还是使用工具?

Silverlight & Blend动画设计系列十:Silverlight中的坐标系统(Coordinate System)与向量(Vector)运动