As Sami suggested in the comments, "it won't work" is too broad. However, here is a basic modification of your code: (since you tagged linq also, I assume you are familiar with lambda syntax)
using (DataClassesDataContext context = new DataClassesDataContext())
{
foreach (var use in context.Users)
{
use.Seasonal_Voucher = DropDownList1.SelectedItem.ToString();
};
//context.Refresh(0);
//context.SubmitChanges();
context.SaveChanges();
}
I realize (as Rob mentions) that loading the entire table into memory for updating is not wise. As such, you could simply try the ExecuteSqlCommand
method (since it looks like you're using Entity Framework anyways). MSDN: Database.ExecuteSqlCommand Method
It is useful for bulk updates.
string sqlQuery = "UPDATE Users SET Seasonal_Voucher = '" + DropDownList1.SelectedItem.ToString() + "'";
using (DataClassesDataContext context = new DataClassesDataContext())
{
context.Database.ExecuteSqlCommand(sqlQuery);
}