使用Silverlight Toolkit 等级控件---Rating

使用Silverlight Toolkit 等级控件---Rating,第1张

概述     乍一看到这个控件,就让我想起了电影里的“悬赏缉拿”的海报。在头像下面有一排星,根据实心星的数目来标识该罪犯的‘危险程度’。其实在一些电影网站上也 有对某部片子打星的功能。而在Silverlight Toolkit 3就是真的提供了这么一个控件,通过它可以很方便的实现这一功能。      下面就简要介绍一下其用法。          首先,我们要在项目中添加对System.Windows.      乍一看到这个控件,就让我想起了电影里的“悬赏缉拿”的海报。在头像下面有一排星,根据实心星的数目来标识该罪犯的‘危险程度’。其实在一些电影网站上也 有对某部片子打星的功能。而在Silverlight Toolkit 3就是真的提供了这么一个控件,通过它可以很方便的实现这一功能。      下面就简要介绍一下其用法。
   
     首先,我们要在项目中添加对System.windows.Controls.input.Toolkit.dll的引用(位于源码包中)。      然后我们就可以到XAML中引用其名空间:    xmlns:inputToolkit="clr-namespace:System.windows.Controls;assembly=System.windows.Controls.input.Toolkit"    
     我们用下面代码声名一了rating实例:   < inputToolkit:rating  x:name ="rating"   Value ="0.65"  ItemCount ="5"  HorizontalAlignment ="left" />  
     注意:ItemCount属性标识当前有几颗星。而Value属性则对应当前显示的星值数目(0-1之间)      我们通过下面代码来标识星值着色是否连续(该枚举有两个值 ContinuousIndivIDual):          rating.SelectionMode  =  ratingSelectionMode.Continuous;   
     下面我们就看一下演示效果:
    
    

        
    
     当然该控件的星星排列除了水平方向,还可以是垂直方向。另外如果认为星星不好看,可以使用Blend 定义一个新的图案做为评级的图标,比如我这里用了示例代码中的样式来把星星换成 '圆球',最终的演示效果如下(样式代码可以下载本DEMO查看):        

  
      而相应的XAML代码如下(注意ItemContainerStyle样式绑定):   Value  Foreground =" {x:Null} "  ItemContainerStyle {StaticResource ratingItemStyle}   
                     margin
="0,4,0" ="5" >
    
inputToolkit:rating.ItemsPanel
        
ItemsPanelTemplate
            
StackPanel  OrIEntation ="Vertical"   VerticalAlignment ="Stretch" ="Stretch" /> </
inputToolkit:rating >    
     是不是很好玩


    
     当然上面是通过在XAML页面上定义来实现的,下面介绍一下如果使用CS代码来创建‘等级项’。      在rating控件中的每个星星(等级)都是一个ratingItem对象,所以我用下面代码来动态加载等级项: ///   <summary>
 加载自定义项
</summary>
private voID  LoadCustomratingItem()
{

    
string [] ratingItmeArray  new [] {  " 很差 " 不好 一般 还行 很棒  };
    
foreach  (  item  in  ratingItmeArray)
    {
        ratingItem ratingItem 
 ratingItem() { Content   item, Foreground   
                     
 SolIDcolorBrush(colors.Blue), margin   Thickness( 12 0 ) };
        ratingItem.SetValue(tooltipService.tooltipProperty, item);
        customsrating.Items.Add(ratingItem);
    }
    rating.SelectionMode 
 ratingSelectionMode.Continuous;       
}
    

     我们来看一下运行效果:    
    

  

      完成了这个演示,来实现一个真正的应用场景,做一个照片评级的应用。首先我们用下面XAML代码创建一个‘带图,按钮,评级控件’的类似于海报的界面。 border  WIDth ="164"  padding ="2"  borderBrush ="#FFB30000"  borderThickness ="1"  margin ="0" Hyperlinkbutton  margin ="0"  Content ="汽车" ="Center"  VerticalAlignment ="#FF0F5A9B" Image  Source ="Images/car.jpg"  WIDth ="160" ="9,255);">="netflix"  Value   HorizontalAlignment ="Black" ="3,1,3,3" button  Click ="button_Click" ="提交"   Height ="30" StackPanel border >      
        然后我们在‘评论按钮’上绑定事件代码,来显示用户评价的结果。    button_Click( object  sender, RoutedEventArgs e)
{
    System.windows.browser.HTMLPage.Window.Alert(
你将该图片的评价为: +  netflix.Value); 
    
// netflix.Value = 0; }     
      最后我们运行一下,如下图:    
   

@H_403_374@

           
      点击提交按钮后:
    
   

          
     
      当然更复杂的应用在官方的示例中有详细演示,如果大家有兴趣可以去 下载运行相应示例即可。    
      好了,今天的内容就先到这里了。
   
      源码下载: http://files.cnblogs.com/daizhj/Silverlight_ToolKit3.rar
 
      原文链接: http://www.cnblogs.com/daizhj/archive/2009/08/14/1529402.html       作者: daizhj,代震军       Tags: silverlight,rating,评级,等级       网址: http://daizhj.cnblogs.com/ 总结

以上是内存溢出为你收集整理的使用Silverlight Toolkit 等级控件---Rating全部内容,希望文章能够帮你解决使用Silverlight Toolkit 等级控件---Rating所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1047563.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)

保存