关于ListBox绑定到自定义对象

总结关键点:

1. ListBox的TextMember与ValueMember必需是属性

2.绑定对象必需继承IList

3. 绑定辅助用这个 private CurrencyManager currencyManager=null;

绑定方法用这个currencyManager = (CurrencyManager)dataGrid1.BindingContext[al];
4.一定要设DataSource属性
5.对象内容发生变化后,要及时刷新 currencyManager.Refresh();

 

 

 

转个链接: http://support.microsoft.com/kb/316303/zh-cn

分步示例

  1. 在 Visual C#.net 或 Visual C# 2005年中创建新的 Windows 应用程序项目。默认情况下创建 Form1。
  2. 将类添加到项目中。
  3. 用下列替换代码中 Class1.cs:
    public class guitar
    {
    	private string make;
    	private string model;
    	private short year;
    	
    	public guitar()
    	{
    	}
    
    	public guitar(string Make, string Model, short Year)
    	{
    	    make=Make;
    	    model=Model;
    	    year=Year;
    	}
    
    	public string Make 
    	{
    		get 
    		{ 
    			return make; 
    		}
    		set 
    		{
    			make = value; 
    		}
    	}
    	
    	public string Model 
    	{
    		get 
    		{ 
    			return model; 
    		}
    		set 
    		{
    			model = value; 
    		}
    	}
    
    	public short Year 
    	{
    		get 
    		{ 
    			return year; 
    		}
    		set 
    		{
    			year = value; 
    		}
    	}
    }
    					
  4. 关闭 Class1.cs 代码窗口,然后切换到窗体设计器。
  5. 向 Form1 中添加一个 DataGrid 控件。调整大小以适应三个行和四个列将 DataGrid 控件。
  6. 将四个 按钮 控件添加到 Form1,然后横向排列按钮。
  7. 下一处 更改 Button1 文本 属性。
  8. 更改到 前一节 的 Button2 文本 属性。
  9. 更改为 第一个 Button3 的 Text 属性。
  10. 上次 更改 Button4 的 Text 属性。
  11. 下面的代码添加到 Form1 类:
    private ArrayList al = new ArrayList();	
    private CurrencyManager currencyManager=null;	
    					
  12. 切换到窗体设计器,用鼠标右键单击该的表单,然后单击 属性
  13. 单击 事件 图标,然后双击 Load 事件将 Form1_Load 事件添加到您的代码。
  14. 将以下代码粘贴到 Form1_Load 事件中:
    al.Add (new guitar("Gibson", "Les Paul", 1958));
    al.Add (new guitar("Fender", "Jazz Bass", 1964));
    al.Add (new guitar("Guild", "Bluesbird", 1971));
    				
    currencyManager = (CurrencyManager)dataGrid1.BindingContext[al];
    	
    dataGrid1.DataSource=al;
    					
  15. 若要查看窗体设计器的开关。
  16. 双击 $ 下一步,然后将下面的代码添加到 button1_Click 事件:
    currencyManager.Position++;
    					
  17. 双击 上一步 中,然后将下面的代码添加到 button2_Click 事件:
    currencyManager.Position--;
    					
  18. 双击 第一个,然后将下面的代码添加到 button3_Click 事件:
    currencyManager.Position = 0;
    					
  19. 双击 最近,然后将下面的代码添加到 button4_Click 事件:
    currencyManager.Position = al.Count - 1;
    					
  20. 生成并运行该项目。
  21. 单击命令按钮以在 DataGrid 控件中的行之间移动。注意是否需要您可以编辑该对象的值。

 

posted @ 2011-03-31 00:05 置身珠海,学习与奋斗 阅读(...) 评论(...) 编辑 收藏