Index: django/newforms/forms.py
===================================================================
--- django/newforms/forms.py	(revision 4194)
+++ django/newforms/forms.py	(working copy)
@@ -2,7 +2,7 @@
 Form classes
 """
 
-from django.utils.datastructures import SortedDict
+from django.utils.datastructures import SortedDict, MultiValueDict
 from django.utils.html import escape
 from fields import Field
 from widgets import TextInput, Textarea, HiddenInput
@@ -221,6 +221,8 @@
 
     def _data(self):
         "Returns the data for this BoundField, or None if it wasn't given."
+        if isinstance(self.form.data, MultiValueDict) and self.field.widget.requires_data_list:
+            return self.form.data.getlist(self.name)
         return self.form.data.get(self.name, None)
     data = property(_data)
 
Index: django/newforms/widgets.py
===================================================================
--- django/newforms/widgets.py	(revision 4194)
+++ django/newforms/widgets.py	(working copy)
@@ -10,6 +10,7 @@
 
 from util import StrAndUnicode, smart_unicode
 from django.utils.html import escape
+from django.utils.datastructures import MultiValueDict
 from itertools import chain
 
 try:
@@ -43,6 +44,8 @@
         Given a dictionary of data and this widget's name, returns the value
         of this widget. Returns None if it's not provided.
         """
+        if isinstance(data, MultiValueDict) and self.requires_data_list:
+            return data.getlist(name)
         return data.get(name, None)
 
     def id_for_label(self, id_):
