Rating

Descripción

Control con el que podemos mostrar al usuario el estado de una votación así como permitir que éste vote de una forma muy intuitiva: con estrellitas.
Podemos configurar prácticamente todos los parámetros: dirección, puntuación inicial, permitir o no que se vote, etc.

Propiedades

• CurrentRating: valor inicial de la puntuación.
• MaxRating: valor máximo de puntuación.
• ReadOnly: determinaremos si el usuario puede o no votar.
• StarCssClass: clase CSS para una estrella visible.
• WaitingStarCssClass: clase CSS de una estrella en modo de espera.
• FilledStarCssClass: clase CSS de una estrella rellenada.
• EmptyStarCssClass: clase CSS de una estrella vacía.
• RatingAlign: dirección en la que se mostrarán las estrellas: Vertical or Horizontal.
• RatingDirection: orientación en la que se votará: de izquierda a derecha/arriba a abajo(LeftToRightTopToBottom) o de derecha a izquierda/abajo a arriba (RightToLeftBottomToTop)
• OnChanged: evento ClientCallBack que se ejecutará cuando el usuario vote.
• Tag: parámetro que se le pasará al ClientCallBack.

Ejemplo

Simple ejemplo en el que se muestran las estrellas y se muestra como manejar el resultado cuando se vota. Obvia decir que la definición del estilo va entre los tags <head>...</head> y que para el correcto funcionamiento deben existir las imágenes especificadas:

Rating.aspx
<style>

.ratingStar {
font-size: 0pt;
width: 13px;
height: 12px;
margin: 0px;
padding: 0px;
cursor: pointer;
display: block;
background-repeat: no-repeat;
}

.filledRatingStar {
background-image: url(Images/FilledStar.png);

}

.emptyRatingStar {
background-image: url(Images/EmptyStar.png);
}

.savedRatingStar {
background-image: url(Images/SavedStar.png);
}

</style>



<ajaxToolkit:Rating
ID="Rating1"
runat="server"
CurrentRating="3"
MaxRating="5"
StarCssClass="ratingStar"
WaitingStarCssClass="savedRatingStar"
FilledStarCssClass="filledRatingStar"
EmptyStarCssClass="emptyRatingStar"
OnChanged="ThaiRating_Changed" />

Ranting.aspx.cs
protected void ThaiRating_Changed(object sender, AjaxControlToolkit.RatingEventArgs e)
{
e.CallbackResult = "Valor = " + e.Value + ", Tag = " + e.Tag;
}