private void Form1_Load(object sender, System.EventArgs e)
{
    //当 textBox1.Text 的长度为2时, button1.Enabled = true
    button1.DataBindings.Add("Enabled", textBox1, "Text", true);
    button1.DataBindings[0].Format += new ConvertEventHandler(Button_Format);
}private void Button_Format(object sender, ConvertEventArgs e)
{
    e.Value = (e.Value.ToString().Length == 2);
}
Button_Format在textBox1中的数据改变时,可执行。
private void Form1_Load(object sender, System.EventArgs e)
{
    //当 dataGridView1.SelectedRows.Count = 1 时, button1.Enabled = true
    button1.DataBindings.Add("Enabled", dataGridView1, "SelectedRows", true);
    button1.DataBindings[0].Format += new ConvertEventHandler(BrandButton_Format);
}private void Button_Format(object sender, ConvertEventArgs e)
{
    DataGridViewSelectedRowCollection SelectedRows = (DataGridViewSelectedRowCollection)e.Value;
    e.Value = (SelectedRows.Count == 1);
}
Button_Format在SelectedRows集合改变是不能触发执行。求高手解答!谢谢