Te recomiendo que utilices Ajax...
http://www.asp.net/ajax/ Si no has escuchado al respecto te resumo que es una combinación de tecnologías con las que puedes hacer que tu sitio web procese la información más rápido, mediante actualizaciones parciales de la página... esto es evitando que toda la página viaje de vuelta al servidor...
Ahora.. para los botones utiliza un radiobutonGroup, los cuales pertenezcan al grupo de cada pregunta para hacerlos excluyentes.
Para el efecto de la barra puedes hacer lo siguiente:
1- Crea una tabla con ancho 0px (width:0px)
2- Crea ua imagen de 1px de ancho con tu editor de imágenes con los colores que quieras que aparezcan en la barra (el truco aquí es hacer que ese pixel se repita en toda a tabla)
3- Cada vez que alguien vota, actualizas el ancho de la tabla, eso si debes definir el ancho máximo de la tabla según un tope máximo.
4- El hecho de Ajax es para que cuando voten en una categoría, se vea solo el cambio
Te recomiendo que veas los videos explicativos... realmente son muy explicativos (están en inglés)