You can set the properties of the EnhancedList at runtime, but you would probably be best served to create PopulationDataSourceSettings at design-time and then copying the code from the InitializeComponent method. You're missing a few things when you're configuring them at runtime.The MethodToExecute is a semi-colon-separated list of the method name and parameters... in this case, it would be "FillDataTable;System.String". When we use the same list and populate it with several different data sets, we will set the PopulationDataSourceSettings manually within the code. Other than that, your ListPopulating method is correct, but you'll need to call the Requery() method whenever you want to repopulate the list.