0

我希望我的选中列表框在鼠标进入时扩大到一定大小,然后在鼠标离开后恢复到原来的大小。下面是代码。但是,当我选择了另一个程序并且我的鼠标在应用程序未处于活动状态时移过选中的列表框时,我收到错误消息。

有关如何修复的任何建议?

    private void checkedListBox1_MouseEnter(object sender, EventArgs e)
    {

        Search.ActiveForm.Height = 552;
        checkedListBox1.Height = 130;


    }

    private void checkedListBox1_MouseLeave(object sender, EventArgs e)
    {

            Search.ActiveForm.Height = 452;
            checkedListBox1.Height = 34;}

错误代码 - 对象引用未设置为对象的实例。

4

2 回答 2

0

尝试这个

private void checkedListBox1_MouseEnter(object sender, EventArgs e)
{
  checkedListBox1.Size = new Size(Width,Height);
}
于 2013-09-17T10:38:07.310 回答
0

这当然会起作用,因此不会引发异常,但我希望这也是您想要的:

private void checkedListBox1_MouseEnter(object sender, EventArgs e)
{
    if(Search.ActiveForm == null) return;
    Search.ActiveForm.Height = 552;
    checkedListBox1.Height = 130;
}

private void checkedListBox1_MouseLeave(object sender, EventArgs e)
{
    if(Search.ActiveForm == null) return;
    Search.ActiveForm.Height = 452;
    checkedListBox1.Height = 34;
 }
于 2013-09-17T11:39:07.323 回答