Создание элемента управления Rating (VB)
Кристиан Венц (Christian Wenz)
Многие веб-сайты, от электронной коммерции до сайтов сообщества, предлагают своим пользователям оценивать статьи или элементы. Обычно для этого требуются некоторые усилия по написанию кода, но у нас есть набор средств управления.
Общие сведения
Многие веб-сайты, от электронной коммерции до сайтов сообщества, предлагают своим пользователям оценивать статьи или элементы. Обычно для этого требуются некоторые усилия по написанию кода, но у нас есть набор средств управления.
Этапы
Прежде всего, вам потребуется (по крайней мере) два вида изображений: одно для заполненного элемента оценки, а другое для пустого элемента оценки. Элементом оценки обычно является star или смайлик. В этом сценарии вы найдете три файла, smiley.png и empty.png и smiley-done.png в рамках загрузки исходного кода для этого руководства.
Затем создайте файл ASP.NET и начните с добавления ScriptManager
в него элемента управления:
<asp:ScriptManager ID="asm" runat="server" />
Затем добавьте Rating
элемент управления из набора средств управления ASP.NET AJAX. Для этого примера необходимо задать следующие атрибуты:
CurrentRating
начальная оценка для использованияMaxRating
максимальная оценкаEmptyStarCssClass
класс CSS, используемый, если элемент оценки ( star ) пуст.FilledStarCssClass
класс CSS, используемый при заполнении элемента оценки ( star )StarCssClass
класс CSS, используемый для видимой статистикиWaitingStarCssClass
класс CSS, используемый при отправке star оценки обратно на сервер
А вот разметка, которая создает элемент управления оценкой с пятью элементами (смайликами), из которых ни один не заполняется изначально:
<ajaxToolkit:Rating ID="r1" runat="server"
CurrentRating="0" MaxRating="5"
EmptyStarCssClass="emptypng" FilledStarCssClass="smileypng"
StarCssClass="smileypng" WaitingStarCssClass="donesmileypng"/>
Три класса CSS, на которые ссылаются, теперь должны отображать соответствующие файлы изображений, что легко сделать с помощью CSS:
<style type="text/css">
.emptypng { background-image: url(empty.png); width: 32px; height: 32px; }
.smileypng { background-image: url(smiley.png); width: 32px; height: 32px; }
.donesmileypng { background-image: url(smiley-done.png); width: 32px; height: 32px; }
</style>
Убедитесь, что вы указали ширину и высоту трех изображений, в противном случае дисплей может выглядеть немного запутанным.
Наконец, результат оценки должен отображаться для пользователя (или, по крайней мере, сохранен в базе данных). Поэтому добавьте метку для выходных данных текстового сообщения и кнопку отправки, чтобы отправить обратно форму оценки на сервер:
<asp:Label ID="Label1" runat="server" />
<input type="submit" id="Submit1" runat="server" value="Rate!" />
В серверном коде получите доступ к элементу управления Оценка через его ID
, а затем получите доступ к его CurrentRating
свойству, которое представляет собой количество выбранных элементов оценки, в нашем примере значение от 0 до 5.
<script runat="server">
Sub Page_Load()
If Page.IsPostBack Then
Label1.Text = "Your rating: " & r1.CurrentRating
End If
End Sub
</script>
Сохраните страницу и загрузите ее в браузер. При наведении указателя мыши на элементы оценки (изначально пустые) возникает эффект JavaScript: оценка меняется. При нажатии на набор звезд текущая оценка сохраняется. Наконец, при отправке формы серверный код выводит выбранную оценку.
Создание системы оценки с минимальным кодом (щелкните для просмотра полноразмерного изображения)