{

实体类和显示控件的绑定        /// Binds an object's properties to <see cref="Control"/>s with the same ID as the propery name. 
实体类和显示控件的绑定        
/// </summary>
实体类和显示控件的绑定        
/// <param name="obj">The object whose properties are being bound to forms Controls</param>
实体类和显示控件的绑定        
/// <param name="container">The control in which the form Controls reside (usually a Page or ContainerControl)</param>
{
实体类和显示控件的绑定            if (obj == nullreturn;
实体类和显示控件的绑定            
实体类和显示控件的绑定            
// Get the properties of the business object
实体类和显示控件的绑定            
//
实体类和显示控件的绑定
            Type objType = obj.GetType();
实体类和显示控件的绑定            PropertyInfo[] objPropertiesArray 
= objType.GetProperties();
实体类和显示控件的绑定
{
实体类和显示控件的绑定
实体类和显示控件的绑定                Control control 
= container.FindControl(objProperty.Name);
实体类和显示控件的绑定                
if (control==null)continue;
实体类和显示控件的绑定                
// handle ListControls (DropDownList, CheckBoxList, RadioButtonList)
实体类和显示控件的绑定                
//
{
实体类和显示控件的绑定                    ListControl listControl 
= (ListControl) control;
实体类和显示控件的绑定                    listControl.SelectedIndex
=-1;
实体类和显示控件的绑定                    
string propertyValue = objProperty.GetValue(obj, null).ToString();
实体类和显示控件的绑定                    ListItem listItem 
= listControl.Items.FindByValue(propertyValue);
实体类和显示控件的绑定                    
if (listItem != null) listItem.Selected = true;
实体类和显示控件的绑定                
{
实体类和显示控件的绑定                    
// get the properties of the control
实体类和显示控件的绑定                    
//
实体类和显示控件的绑定
                    Type controlType = control.GetType();
实体类和显示控件的绑定                    PropertyInfo[] controlPropertiesArray 
= controlType.GetProperties();
实体类和显示控件的绑定
实体类和显示控件的绑定                    
// test for common properties
实体类和显示控件的绑定                    
//
实体类和显示控件的绑定
                    bool success = false;
实体类和显示控件的绑定                    success 
= FindAndSetControlProperty(obj, objProperty, control, controlPropertiesArray, "Checked"typeof(bool) );
实体类和显示控件的绑定                        
实体类和显示控件的绑定                    
if (!success) 
实体类和显示控件的绑定                        success 
= FindAndSetControlProperty(obj, objProperty, control, controlPropertiesArray, "SelectedDate"typeof(DateTime) );
实体类和显示控件的绑定
实体类和显示控件的绑定                    
if (!success) 
实体类和显示控件的绑定                        success 
= FindAndSetControlProperty(obj, objProperty, control, controlPropertiesArray, "Value"typeof(String) );
实体类和显示控件的绑定                        
实体类和显示控件的绑定                    
if (!success) 
实体类和显示控件的绑定                        success 
= FindAndSetControlProperty(obj, objProperty, control, controlPropertiesArray, "Text"typeof(String) );
实体类和显示控件的绑定                        
实体类和显示控件的绑定                }

实体类和显示控件的绑定            }

实体类和显示控件的绑定        }

实体类和显示控件的绑定        

实体类和显示控件的绑定        
/// Looks for a property name and type on a control and attempts to set it to the value in an object's property 
实体类和显示控件的绑定        
/// of the same name.
实体类和显示控件的绑定        
/// </summary>
实体类和显示控件的绑定        
/// <param name="obj">The object whose properties are being retrieved</param>
实体类和显示控件的绑定        
/// <param name="objProperty">The property of the object being retrieved</param>
实体类和显示控件的绑定        
/// <param name="control">The control whose ID matches the object's property name.</param>
实体类和显示控件的绑定        
/// <param name="controlPropertiesArray">An array of the control's properties</param>
实体类和显示控件的绑定        
/// <param name="propertyName">The name of the Control property being set</param>
实体类和显示控件的绑定        
/// <param name="type">The correct type for the Control property</param>
实体类和显示控件的绑定        
/// <returns>Boolean for whether the property was found and set</returns>
{
实体类和显示控件的绑定            // iterate through control properties
实体类和显示控件的绑定            
//
{
实体类和显示控件的绑定                
// check for matching name and type
实体类和显示控件的绑定                
//
{
实体类和显示控件的绑定                    
// set the control's property to the business object property value
实体类和显示控件的绑定                    
//
实体类和显示控件的绑定
                    controlProperty.SetValue(control, Convert.ChangeType( objProperty.GetValue(obj, null), type) , null);
实体类和显示控件的绑定                    
return true;
实体类和显示控件的绑定                }

实体类和显示控件的绑定            }

实体类和显示控件的绑定            
return false;
实体类和显示控件的绑定        }

实体类和显示控件的绑定

实体类和显示控件的绑定        
/// Binds your the values in <see cref="Control"/>s to a business object.
实体类和显示控件的绑定        
/// </summary>
实体类和显示控件的绑定        
/// <param name="obj">The object whose properties are being bound to Control values</param>
实体类和显示控件的绑定        
/// <param name="container">The control in which the form Controls reside (usually a Page or ContainerControl)</param>
{
实体类和显示控件的绑定            if (obj == nullreturn;
实体类和显示控件的绑定            
实体类和显示控件的绑定            
// Get the properties of the business object
实体类和显示控件的绑定            
//            
实体类和显示控件的绑定
            Type objType = obj.GetType();
实体类和显示控件的绑定            PropertyInfo[] objPropertiesArray 
= objType.GetProperties();
实体类和显示控件的绑定
{
实体类和显示控件的绑定
实体类和显示控件的绑定                Control control 
= container.FindControl(objProperty.Name.ToLower());
实体类和显示控件的绑定                
if (control==null)continue;
{
实体类和显示控件的绑定                    ListControl listControl 
= (ListControl) control;
实体类和显示控件的绑定                    
if (listControl.SelectedItem != null)
实体类和显示控件的绑定                        objProperty.SetValue(obj, Convert.ChangeType(listControl.SelectedItem.Value,objProperty.PropertyType), 
null);
实体类和显示控件的绑定
{
实体类和显示控件的绑定                    
// get the properties of the control
实体类和显示控件的绑定                    
//
实体类和显示控件的绑定
                    Type controlType = control.GetType();
实体类和显示控件的绑定                    PropertyInfo[] controlPropertiesArray 
= controlType.GetProperties();
实体类和显示控件的绑定
实体类和显示控件的绑定                    
// test for common properties
实体类和显示控件的绑定                    
//
实体类和显示控件的绑定
                    bool success = false;
实体类和显示控件的绑定                    success 
= FindAndGetControlProperty(obj, objProperty, control, controlPropertiesArray, "Text"typeof(String) );
实体类和显示控件的绑定
实体类和显示控件的绑定                    
if (!success) 
实体类和显示控件的绑定                        success 
= FindAndGetControlProperty(obj, objProperty, control, controlPropertiesArray, "SelectedDate"typeof(DateTime) );
实体类和显示控件的绑定
实体类和显示控件的绑定                    
if (!success) 
实体类和显示控件的绑定                        success 
= FindAndGetControlProperty(obj, objProperty, control, controlPropertiesArray, "Value"typeof(String) );
实体类和显示控件的绑定
实体类和显示控件的绑定                    
if (!success) 
实体类和显示控件的绑定                        success 
= FindAndGetControlProperty(obj, objProperty, control, controlPropertiesArray, "Checked"typeof(bool) );
实体类和显示控件的绑定                }

实体类和显示控件的绑定            }

实体类和显示控件的绑定        }

实体类和显示控件的绑定

实体类和显示控件的绑定        
/// Looks for a property name and type on a control and attempts to set it to the value in an object's property 
实体类和显示控件的绑定        
/// of the same name.
实体类和显示控件的绑定        
/// </summary>
实体类和显示控件的绑定        
/// <param name="obj">The object whose properties are being set</param>
实体类和显示控件的绑定        
/// <param name="objProperty">The property of the object being set</param>
实体类和显示控件的绑定        
/// <param name="control">The control whose ID matches the object's property name.</param>
实体类和显示控件的绑定        
/// <param name="controlPropertiesArray">An array of the control's properties</param>
实体类和显示控件的绑定        
/// <param name="propertyName">The name of the Control property being retrieved</param>
实体类和显示控件的绑定        
/// <param name="type">The correct type for the Control property</param>
实体类和显示控件的绑定        
/// <returns>Boolean for whether the property was found and retrieved</returns>
{
实体类和显示控件的绑定            // iterate through control properties
实体类和显示控件的绑定            
//
{
实体类和显示控件的绑定                
// check for matching name and type
实体类和显示控件的绑定                
//
{
实体类和显示控件的绑定                    
// set the control's property to the business object property value
实体类和显示控件的绑定                    
//
{
实体类和显示控件的绑定                        objProperty.SetValue(obj, Convert.ChangeType( controlProperty.GetValue(control, 
null), type) , null);
实体类和显示控件的绑定                        
return true;
{
实体类和显示控件的绑定                        
// the data from the form control could not be converted to objProperty.PropertyType
实体类和显示控件的绑定                        
//
实体类和显示控件的绑定
                        return false;
实体类和显示控件的绑定                    }

实体类和显示控件的绑定                }

实体类和显示控件的绑定            }

实体类和显示控件的绑定            
return false;
实体类和显示控件的绑定        }

实体类和显示控件的绑定    }

相关文章: