现在的位置: 首页 > 综合 > 正文

IBindableComponent 接口

2012年04月16日 ⁄ 综合 ⁄ 共 877字 ⁄ 字号 评论关闭

使非控件组件可以模拟 Windows 窗体控件的数据绑定行为。

Binding 包含通过 BindableComponent 属性对其 IBindableComponent 所有者的引用。

Control 类会实现此接口,因此,如果可绑定组件是从 Control 继承的,则无需实现此接口。

 

[ToolStripItemDesignerAvailability(ToolStripItemDesignerAvailability.StatusStrip)]
public class BindableToolStripStatusLabel : ToolStripStatusLabel, IBindableComponent
{
    private BindingContext _context;

    public BindingContext BindingContext
    {
        get
        {
            if (null == _context)
            {
                _context = new BindingContext();
            }

            return _context;
        }
        set { _context = value; }
    }

    private ControlBindingsCollection _bindings;

    public ControlBindingsCollection DataBindings
    {
        get
        {
            if (null == _bindings)
            {
                _bindings = new ControlBindingsCollection(this);
            }
            return _bindings;
        }
        set { _bindings = value; }
    }
}

调用时:

public partial class Form1 : Form
{
   private Binding _b;

   public Form1()
   {
       InitializeComponent();
   }

   private void Form1_Load(object sender, EventArgs e)
   {
       _b = new Binding("Text", textBox1, "Text", true);

       bindableToolStripStatusLabel1.DataBindings.Add(_b);
   }
}

抱歉!评论已关闭.